这是一个由三部分组成的问题
相对路径中是否存在性能或安全风险?
如何将相对路径转换为绝对路径(在用PHP编写的大型项目中)?
在PHP中,当使用include
时,我应该给出绝对路径还是相对路径?
PHP中有两种相对路径。根据文件系统的相对路径以./
或../
开头,不会影响性能。PHP还专门解释像what/ever.php
这样的相对路径,并将include_path
考虑在内。由于必须遍历和搜索目录,这通常(可测量地)较慢。
安全,这个问题被问得太宽泛了,并没有直接影响到这一点。如果可能有恶意的include脚本放在系统的其他地方和include_path中,那么我会认为这是实际的问题,而不是相对路径。
你应该在你的项目中使用什么,取决于它是否需要重新定位。最常见的是使用常数ala PROJECT_ROOT
来模拟绝对路径。
要将文件系统的相对路径转换为绝对路径,请使用realpath()