我有一个带有符号链接的文件系统结构,如下所示:
folder123
index.php
config.php -> symlink to shared/config.php
shared
config.php
我在命令行上运行 index.php,index.php 包含 config.php,它是指向其他文件夹中文件的符号链接。
如何从 config.php 脚本中知道 index.php 文件路径?所需的结果是“folder123”(以及它的完整路径),而不是“共享”。所以,我不能使用__FILE__。
这适用于由浏览器运行的脚本(至少在我的情况下,它与 folder123 相同 - 基本目录):
$_SERVER['DOCUMENT_ROOT']
我也需要命令行的东西。
看起来像
$_SERVER['PWD']
是我需要的东西,但没有记录,所以我觉得它不是一种可靠的方法。此外,您需要将其与 SCRIPT_FILENAME 组合以获得所需的结果 - PWD 显示运行脚本的目录,而不是完整路径。
getcwd 看起来很有希望,但它可以通过 chdir 进行更改 - 如果我找不到更好的替代方案,我会使用它。