我想知道使用:
是否有任何区别 $_SERVER['DOCUMENT_ROOT] . '/path/to/document.html';
代替:
'../path/to/document.html';
…假设它们都指向同一个地方。
是否有任何"最佳实践",或者它真的不重要?
感谢注:我如何接受答案?我不知道有这样的选择,我看起来像个白痴,所有这些不被接受的问题的答案…
真的没什么大不了的。我想说最好的做法是使用$_Server['DOCUMENT_ROOT'],因为这样你就确切地知道你将在哪里结束,而如果你的目录嵌套了一些深,那么'..’不会总是把你带到不同的文件中相同的地方,所以它只是更多的跟踪。
您可以通过点击您想要接受的帖子左侧向上和向下箭头旁边的复选标记来接受答案。
我个人使用定义的常量,例如:
define('PATH_BASE', rtrim(strtr(__DIR__, '''', '/'), '/') . '/');
向PATH_BASE
添加相对路径:
$dir = PATH_BASE . 'path/to/file.php';
使用绝对路径会稍微快一些,但我喜欢坚持使用".. "