据我所知,php 的 getcwd()
(以及类似的函数,例如 dirname(__FILE__)
)应该返回正在执行的文件的当前目录.
如果当前目录恰好是另一个目录的符号链接(symbolic link),php(可能与 apache 结合使用)应该返回显示符号链接(symbolic link)名称的路径作为您所在的“目录”。
例子:
from /var/www,
directory 'one' contains index.php
symlink 'two' points at directory 'one'
one/index.php: <?php echo getcwd(); ?>
正在访问 http://localhost/two/index.php在浏览器中显示 /var/www/one
。
我希望它显示 /var/www/two
有谁知道这是我可以更改的 php 还是 apache 设置?还是我无法以这种方式使用符号链接(symbolic link)?
最佳答案
好的,明白了。如果通过浏览器,请使用 $_SERVER['SCRIPT_FILENAME']
。在命令行上,您可以使用 exec("pwd")
关于php getcwd() 解析符号链接(symbolic link)的目标而不是当前目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7303189/