Execute php script before every php script?

How would I run this before every php script besides putting it in all of them?

if ($_SERVER['REMOTE_ADDR'] == '123.123.123.123')
{
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_REAL_IP'];
}

I basically want the same affect as putting that at the top of every script without actually doing that.


Solution 1:

Put it in its own file and set the auto_prepend_file configuration in the php.ini / .htaccess file to point to it.

Update: Since you mentioned lighttpd in a comment, note that you can configure it like this in the global INI file with PHP 5.3:

[PATH=/vhost/domain.com]  
auto_prepend_file = /vhost/domain.com/foo.php

[HOST=domain.com]
auto_prepend_file = /vhost/domain.com/foo.php

Or you can create the file /vhost/domain.com/.user.ini and do the same:

auto_prepend_file = /vhost/domain.com/foo.php

Solution 2:

If you have the necessary rights to change your PHP configuration, auto_prepend_file is exactly what you're looking for.

auto_prepend_file Specifies the name of a file that is automatically parsed before the main file. The file is included as if it was called with the require() function, so include_path is used.

The special value none disables auto-prepending.