提问者:小点点

PHP包含/要求WebRoot问题的相对路径


我已经用很多语言编写了大量的程序,但都比核心PHP更新。在大量的谷歌搜索之后,我似乎找不到一个好的解决方案来包含/require/require\u,只使用webroot的相对路径,而不是操作系统的相对路径。

我调整了PHP Ini包含路径,这是一个很好的解决方案,但问题是许多PHP IDE不评估包含路径,以暴露智能感知等类定义...所以我发现自己在调试/编码时不得不做很多临时包含。

对我来说,经典的ASP和其他语言让这变得容易多了,相对路径总是相对于web根,而不是php的当前文件位置的相对路径,php的根是文件系统的根。我见过很多奇怪的方法来试图解决这个问题,但这正是它似乎一直在解决的问题。

你们谁能帮我度过这一周,为我解决这个令人恼火的挑战?


共1个答案

匿名用户

您总是可以在php中添加类似的内容。ini文件:

ROOT_PATH = "/var/www/<your_directory>"

然后,您可以在php页面中获取该值,如下所示:

$ROOT_PATH = ini_get("ROOT_PATH");

然后你可以包括这样的文件:

include_once($ROOT_PATH."/<path>/<filename.php>");

当然,您可以简单地添加定义(ROOT_PATH,/var/www/