Automatically load a config.php file for all pages

2019-02-11 17:54发布

问题:

Does anyone know how to set up something where a specific file can be loaded automatically for all pages before anything else?

For example if I have a config.php file and I want this file to be loaded anytime anyone visits a page on my website.

In here I would have some configuration info that is required to load prior to anything else.

I don't want to do any includes on another php file for this I just want this to be loaded every time automatically before anything else. Basically a universal include.

回答1:

You want to use auto_prepend_file. Set this directive in your php.ini or .htaccess file to the path to your config.php file and any PHP file accessed will automatically have the contents of the config file prepended to it.

For .htaccess:

php_value auto_prepend_file /full/path/to/file/config.php

Keep in mind this ONLY will work on a server where PHP is run as an Apache module. If PHP is run as a CGI you need to add edit it in your php.ini file or put it inside a .user.ini file just without the php_value part.

In Nginx you could add this line to server configuration inside location ~ \.php$

fastcgi_param PHP_VALUE "auto_prepend_file=/full/path/to/file/config.php";


回答2:

Use the require control structure. Place it at the top of each php file before any code, but after the "<?php" tag.

http://php.net/manual/en/function.require.php