我在PHP项目中有这个文件夹结构。(如eclips所示)
-MySystem
+Code
+Data_Access
-Public_HTML
+css
+js
+Templates
-resources
当我尝试这段代码时
echo $_SERVER['DOCUMENT_ROOT']
输出为
工作区D:/
如何在不硬编码文件夹名的情况下获得系统RootDirectory (MySystem
)的路径?
发布于 2011-12-29 22:08:22
发布于 2011-12-29 22:13:36
当你这么说的时候
$_SERVER['DOCUMENT_ROOT']
包含以下路径:
D:/workspace
那么D:
就是你要找的,不是吗?在这种情况下,您可以通过斜杠分解字符串并返回第一个字符串:
$pathInPieces = explode('/', $_SERVER['DOCUMENT_ROOT']);
echo $pathInPieces[0];
这将输出服务器的根目录。
当你使用常量DIRECTORY_SEPARATOR
而不是硬编码的斜杠('/'
)时,这段代码也可以在下运行。
更新2: $_SERVER
全局变量并不总是可用。例如,在命令行(cli)上。因此,您应该使用__DIR__
而不是$_SERVER['DOCUMENT_ROOT']
。__DIR__
返回php文件本身的路径。
发布于 2013-04-24 22:58:11
https://stackoverflow.com/questions/8668776
复制相似问题