我想引用我的根目录中的文件,问题是该文件被其他几个PHP脚本使用,这些脚本可以是2或3个深度的路径。
我可以通过
来引用它'../database_sql/dbconnect.php' ; 1 deep
'../../database_sql/dbconnect.php' ; 2 deep
'../../../database_sql/dbconnect.php' ; 3 deep
我的问题是如何在不知道路径有多深的情况下引用此根文件夹文件,即:不使用../../../
等
答案 0 :(得分:3)
两种解决方案:
第一种是定义一个常量,其值是根目录:
// in a file in a your root directory:
define('ROOT', dirname(__DIR__));
// in other files:
include ROOT . '/file/relative/to/the/root.php';
第二种是使用include_path:
// in a file in your root directory:
set_include_path(dirname(__DIR__) . PATH_SEPARATOR . get_include_path());
// in other files:
// PHP will search in include_path
include 'file/relative/to/the/root.php';
答案 1 :(得分:3)
另一种解决方案(更多工作)是面向对象并实现autoloader。