必须向后移植PHP 7应用程序以使其与PHP 5.4兼容,并且我收到以下错误:
<b>Parse error</b>: syntax error, unexpected ')', expecting :: (T_PAAMAYIM_NEKUDOTAYIM) in blah blah...
在我的一个函数中使用此条件语句:
if (!empty(MY_CONSTANT)) {
// blah...
}
自从我使用PHP 5.4以来已经很长时间了,为什么会抛出这个错误?
答案 0 :(得分:3)
在PHP 5.5之前,empty()仅支持变量;其他任何东西都会导致解析错误。
如果您想检查某个命名常量是否存在,可以使用defined()
if ( defined('MY_CONSTANT') ) {
// blah
}
答案 1 :(得分:0)
我试试这个&amp;它适用于PHP 5.4.0
define("MY_CONSTANT", 15);
$testingVal = MY_CONSTANT;
if (!empty($testingVal)) {
echo MY_CONSTANT;
}