在PHP默认情况下清空`include_path`

时间:2014-10-24 23:58:05

标签: php include

如果我在PHP中有一个空的include_path(例如include_path=:),我的includerequire函数仍然有用。就像include首先尝试初始脚本的目录一样,无论您include_path的设置是什么。

当我将include_path设置为/usr/lib/php5/之类的内容时,这会让我感到更加困惑,然后从同一个include('test.php')的脚本中尝试test.php目录。我想如果它在我指定的test.php中找不到当前目录中的include_path

我不是在寻求解决方案;我已经可以解决当前的问题。我正在寻找关于include_path如何运作的解释。谢谢!

2 个答案:

答案 0 :(得分:1)

基本上如果您只是在没有任何路径信息的情况下指定要包含的文件的名称,那么将使用include_path。

即。

include 'wow.php';  (this will use include_path to try to find it) 

如果找不到它,那么它将与尝试包含它的文件位于同一目录中。

include '/blah/wow.php';

因为它有一些路径信息,所以它会一起忽略include_path。

答案 1 :(得分:1)

使用此

include($_SERVER['DOCUMENT_ROOT'].'/test.php');