Deactivate Code Automatically on a Test Server

When fixing a bug or adding a new feature to a website, it may be beneficial to test the changes on a development server before going live. The problem is that some aspects of the code probably shouldn't be active on the development server. For example, we probably don't Google Analytics tracking any of those visits. The code could be manually disabled during the test phase, but are we going to remember? Instead let's look into automating the process.

To check which server is being used to view our page being updated, we'll utilize the strpos() function and the $_SERVER['DOCUMENT_ROOT'] variable. If the development server is accessed using test.yourwebsite.com, we can do something like the following:

<?php
//IF DEVELOPMENT SERVER
if(strpos($_SERVER['DOCUMENT_ROOT'], 'test.yourwebsite.com') !== false) {
     print 'Development server';
 
//ELSE...LIVE SERVER
} else {
     print 'Live server';
}
?>

To get the Google Analytics code to only work on our live website, the code would be placed in the else portion. Since we don't need both the if and else portion, the code could be rewritten as follows:

<?php
if(strpos($_SERVER['DOCUMENT_ROOT'], 'test.yourwebsite.com') === false) {
     //Google Analytics code goes here
}
?>

Conclusion

With the new code in place, we no longer need to worry about disabling aspects of our code before testing on the development server. It may not be complicated to disable the code manually, but it does require us to do it every time. Mistakes happen; especially when it comes to simple tasks. So let PHP handle the tasks for us.

0 Comments

There are currently no comments.

Leave a Comment


Warning: Undefined variable $user_ID in /home/cyberscorp/webdev.cyberscorpion.com/wp-content/themes/scorpbytes/comments.php on line 72