当我在本地主机中使用$_SERVER['DOCUMENT_ROOT']
时,它输出:C:/apache2.2/htdocs
。
但是,当我在服务器上使用它时,它输出:/var/www/
我无法使用stripslashes()
,因为它甚至从头开始删除所有斜杠。有什么建议如何对付这个?如果输出结尾有斜线或者没有结果,我不介意。但我只想让两个文件都一样。因此,我不会通过添加或删除斜杠来改变路径。
顺便说一句,我无法更改服务器上的任何内容。但是我可以更改我的本地以匹配服务器,但不知道如何。
答案 0 :(得分:2)
尝试
rtrim($_SERVER['DOCUMENT_ROOT'], '/')
规范化字符串。请参阅http://php.net/manual/function.rtrim.php。
我强烈建议永远依赖于DOCUMENT_ROOT,因为它是外部依赖项。相反,使用魔术常量__DIR__
和__FILE__
来引用相对于脚本的路径。例如......
$someDirRelativeToThisFile = __DIR__ . '/some-dir'; // PHP >= 5.3.0
$someDirRelativeToThisFile = dirname(__FILE__) . '/some-dir'; // PHP < 5.3.0