0

我已经用多种语言完成了大量的编程,但对核心 PHP 来说是较新的。经过大量的谷歌搜索后,我似乎找不到一个好的解决方案来使用来自 webroot 的相对路径而不是来自操作系统的相对路径来包含/require/require_once。

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

对我来说,经典的 ASP 和其他语言使这变得非常容易,因为相对路径总是相对于 web 根目录,而不是 php 与当前文件位置的相对关系,而 php 的根目录是文件系统的根目录。我已经看到了很多古怪的方法来尝试解决这个问题,但这正是它似乎总是可以解决的问题。

你们中的任何人都可以帮助我度过一周并为我解决这个乏味的恼人挑战吗?

4

1 回答 1

0

您可以随时将这样的内容添加到您的php.ini文件中:

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

然后你可以在你的 php 页面中获取这个值,比如:

$ROOT_PATH = ini_get("ROOT_PATH");

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

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

当然,您可以define("ROOT_PATH", "/var/www/<your_directory>");直接在文件中添加,但如果您从文件中获取设置,php.ini您可以在不同的服务器上进行不同的设置。

于 2013-01-24T15:00:01.440 回答