我可以在以下位置设置PHP包含路径php.ini
:
include_path = /path/to/site/includes/
但其他网站受到影响,这是不好的.
我可以在每个文件的开头设置PHP include:
$path = '/path/to/site/includes/'; set_include_path(get_include_path() . PATH_SEPARATOR . $path);
但这似乎是不好的做法,并且使事情变得混乱.
所以我可以将其包含在内,然后将其包含在每个文件中:
include 'includes/config.php';
要么
include '../includes/config.php';
这就是我现在正在做的事情,但是包含路径config.php
将根据包含的内容而改变.
有没有更好的办法?有关系吗?
如果您使用apache作为Web服务器,则可以使用.htaccess文件覆盖(如果允许)设置.有关详细信息,请参阅PHP手册.
基本上你在你的网站root中放了一个名为.htaccess的文件,其中包含一些PHP ini
值.如果您将Apache配置为允许覆盖,则此站点将使用PHP配置中的所有值,+您在.htaccess文件中指定的值.
只能用于
PHP_INI_ALL
和PHP_INI_PERDIR
类型指令
正如我链接的页面中所述.如果单击查看完整列表,则会看到包含路径是PHP_INI_ALL
指令.
恕我直言,Erik Van Brakel给出了最好的答案之一.
此外,如果您使用的是Apache和虚拟主机,则可以直接在其中设置包含.使用此方法,您不必记住在.htaccess中保留php_admin命令.