PHP:如何不对Web应用程序root进行硬编码

前端之家收集整理的这篇文章主要介绍了PHP:如何不对Web应用程序root进行硬编码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前在我的应用程序的配置文件中有以下内容
define('DOCROOT',dirname(__FILE__).DIRECTORY_SEPARATOR);
define('WEBROOT','http://localhost/samples/');

第一行完美无缺.我可以在任何地方包含配置文件,然后按预期使用DOCROOT常量.

第二行也适用,但它是硬编码的,这意味着当我将此文件上传到我的网络服务器时,它将是错误的.它应该是http://samples.example.com.是否有一种好方法可以防止这种硬编码?我觉得我必须在某个地方硬编码,在那种情况下,我可以逃脱的是什么和多少?

我使用以下代码来查找基本URL:
function getBaseURL() {
    return 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://'
         . $_SERVER['HTTP_HOST']
         . rtrim(dirname($_SERVER['SCRIPT_NAME']),'/\\')
         . '/'
    ;
}

猜你在找的PHP相关文章