我用这个:
echo dirname(__FILE__);
Run Code Online (Sandbox Code Playgroud)
这使:
C:\UwAmp\www\myfolder\admin
Run Code Online (Sandbox Code Playgroud)
但是我正在寻找路径,直到:
C:\UwAmp\www\myfolder\
Run Code Online (Sandbox Code Playgroud)
从当前的脚本.怎么办?
Dav*_*dom 78
你可以这样做:
dirname(__DIR__);
Run Code Online (Sandbox Code Playgroud)
要么:
__DIR__ . '/..';
Run Code Online (Sandbox Code Playgroud)
...但是在Web服务器环境中,您可能会发现您已经在当前文件的工作目录中工作,因此您可以使用:
'../'
Run Code Online (Sandbox Code Playgroud)
...引用上面的目录.您可以替换__DIR__使用dirname(__FILE__)PHP 5.3.0之前.
你还应该知道什么__DIR__并且__FILE__指的是:
文件的完整路径和文件名.如果在include中使用,则返回包含文件的名称.
所以它可能并不总是指向你想要它的位置.
Dan*_*oap 18
你可以试试
echo realpath(__DIR__ . DIRECTORY_SEPARATOR . '..');
Run Code Online (Sandbox Code Playgroud)
包含文件的父目录是
dirname(getcwd())
Run Code Online (Sandbox Code Playgroud)
例如,文件是 /var/www/html/folder/inc/file.inc.php ,它包含在 /var/www/html/folder/index.php中
然后通过调用/file/index.php
getcwd() is /var/www/html/folder
__DIR__ is /var/www/html/folder/inc
so dirname(__DIR__) is /var/www/html/folder
Run Code Online (Sandbox Code Playgroud)
但我们想要的是/var/www/html,即dirname(getcwd())