我想知道如何在不使用相对路径或直接绝对路径(硬编码路径)的情况下将代码(配置文件)包含在存在于不同目录深度的 php 文件中。我不喜欢使用以下内容:
- ../config.php
- ../../config.php
- ../../../config.php
- c:/wamp/www/mysite/config.php
这个想法是避免在以下情况下修改多个文件:
- 文件移动到其他目录
- 应用程序的根已更改
我所做的是在我的配置文件中放入以下内容:
define("ROOT", dirname(__FILE__));
在其他文件中:
$root = realpath($_SERVER["DOCUMENT_ROOT"]);
include $root ."/mysite/config.php";
您可以看到我硬编码了我的站点"/mysite"的文件夹。可以避免硬编码这个目录名吗?