我有一个 PHP 文件/a/b/file.php ,其中包含以下行
require("../connect.php");
在connect.php中有一行
require("../config.inc.php");
这在我的本地服务器上一切正常。有一堆使用 connect.php 的文件,它们也都工作正常。
但是在托管站点/a/b/file.php 上抛出错误:
Fatal error: require() [function.require]: Failed opening required
'../config.inc.php' (include_path='.:/usr/local/php5/lib/php') in
/******/connect.php on line 3
我怀疑即使 connect.php 位于另一个文件夹中,它也会相对于/a/b 来查找它。是否有 php.ini 设置可以更改此设置?
最佳答案
你为什么不使用类似的东西:
require( dirname(__FILE__).DIRECTORY_SEPARATOR."..".DIRECTORY_SEPARATOR."connect.php");
这样您就可以避免在类 Unix 系统上开发应用程序并将其部署在 Windows 系统上时出现的问题,反之亦然。
关于PHP 包含相对于 URL 路径而不是文件路径,如何更改它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4540406/