这是我在文件'b'中得到的错误:
Notice: Use of undefined constant SITE_STATUS - assumed 'SITE_STATUS'
我的文件'a'包含:
if ($_SERVER['HTTP_HOST'] == 'localhost') {
defined('SITE_STATUS') or define('SITE_STATUS', "dev");
} elseif ($_SERVER['HTTP_HOST'] == 'dev.xxx.com') {
defined('SITE_STATUS') or define('SITE_STATUS', "dev-remote");
}
和文件'b'是:
if (SITE_STATUS == 'dev') {
$prefix = "/020";
} elseif (SITE_STATUS == 'dev-remote') {
$prefix = "";
}
在文件'a'中,require_once文件'b'在定义常量之后。
文件'b'无法识别文件'a'中设置的常量。难道我做错了什么?
编辑:在'a'页上正常工作
EDIT2:在页面'b'如果我在if语句之前键入(SITE_STATUS),我可以在页面'dev'上看到这意味着仍然定义了常量。
答案 0 :(得分:0)
你可以试试这个:
if ($_SERVER['HTTP_HOST'] == 'localhost')
{
defined('SITE_STATUS') or define('SITE_STATUS', "dev");
}
elseif ($_SERVER['HTTP_HOST'] == 'dev.xxx.com')
{
defined('SITE_STATUS') or define('SITE_STATUS', "dev-remote");
}
// add else
else
{
echo "I was not expecting you here :o ".$_SERVER['HTTP_HOST'];
}