$ _SERVER [' DOCUMENT_ROOT']在结尾创建额外的斜杠

时间:2015-07-07 02:55:10

标签: php

当我在本地主机中使用$_SERVER['DOCUMENT_ROOT']时,它输出:C:/apache2.2/htdocs

但是,当我在服务器上使用它时,它输出:/var/www/

我无法使用stripslashes(),因为它甚至从头开始删除所有斜杠。有什么建议如何对付这个?如果输出结尾有斜线或者没有结果,我不介意。但我只想让两个文件都一样。因此,我不会通过添加或删除斜杠来改变路径。

顺便说一句,我无法更改服务器上的任何内容。但是我可以更改我的本地以匹配服务器,但不知道如何。

1 个答案:

答案 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

请参阅http://php.net/manual/language.constants.predefined.php

相关问题