我开发各种 PHP 应用程序并将其部署到不同的环境。特别是在开发环境中,它们可以在任何地方,从 document_root 到 /Users/me/Sites/ 甚至 /Users/me/Sites/someapp/
在这些应用程序中,我需要知道“应用程序根”在哪里,一次是真实路径,一次是 URL。路径没有问题。假设我在应用程序根目录中有一个 bootstrap.php :
define("BASE_DIR", realpath(dirname(__FILE__)));
但是,我无法可靠地获取基本 URL。在大多数环境中,只需从 BASE_DIR 中减去文档根即可:
define("BASE_URL", str_replace($_SERVER['DOCUMENT_ROOT'],'',BASE_DIR) . "/");
现在,我的问题是:这不适用于我的应用程序位于我的用户目录中的环境,因为 PHP 仍然可以看到主文档根目录。有没有人解决过这个问题?