我在不同的环境下有奇怪的行为empty()函数。我想知道是否是因为php版本或php配置或其他原因。以下代码在生产服务器上给我错误,并且本地开发环境上没有错误。我希望它是相反的方式-产品上没有错误,但在本地上显示错误。
if ( !empty($f && !empty($g)) ) {
print 'condition is true';
}
else {
print 'condition is false';
}
显然有一个与括号位置有关的错误,该错误应该在$ f变量之后,而不是条件结尾。我在生产服务器上收到此错误:
PHP解析错误:语法错误,/opt/webdata2/site5073/openfed-7.x-2.17/sites/all/themes/custom/ombudsman/template中出现意外的'&&'(T_BOOLEAN_AND),期待')'。第79行的PHP
答案 0 :(得分:0)
在PHP 5.5之前,empty()仅支持变量。其他任何情况都会导致解析错误。换句话说,以下内容将不起作用:empty(trim($ name))。而是使用trim($ name)== false。