只是想知道这个表达式是否有一个简短的版本:
if(!empty($var) && $var == 'FOO')
{
 // Do things
}
它检查是否$var IS DEFINED、NOT FALSE和。只有满足这些要求,条件的第二部分才会启动并检查 if 。NOT NULLNOT EQUAL TO ZERO$var$var == 'FOO'
当然,我可以这样做:if($var == 'FOO'){}但如果$var没有定义,它会抛出一个Notice.
刚刚测试了这段代码:
$var='FOO';
if (!empty($var)=='FOO')
{
 echo 'BLAH'; 
}
// Will output 'BLAH'
但BLAH在任何情况下,它都会在!empty($var)返回时输出TRUE。由于 string - 'FOO'> IS DEFINED, NOT FALSE,它将输出. 意义只根据它的外表来判断,而不是根据里面的东西来判断。在我的情况下不会工作。NOT NULLNOT EQUAL TO ZEROBLAH!empty($var)=='FOO'$var
有任何想法吗?