我目前在我的应用程序的配置文件中有以下内容:
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']),'/\\') . '/' ; }