[IF]的PHP短语法存在且相等

时间:2013-04-12 14:35:12

标签: php variables syntax

只是想知道这个表达式是否有简短版本:

if(!empty($var) && $var == 'FOO')
{
 // Do things
}

它会检查$var IS DEFINEDNOT FALSENOT 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。由于字符串'FOO' - > IS DEFINEDNOT FALSENOT NULLNOT EQUAL TO ZERO会输出BLAH。含义!empty($var)=='FOO'只能通过它的外观而不是内部的判断$var。不适用于我的情况。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您可以实现自己的功能。

if (myFunction($var, 'foo')) ...

功能如下:

public function myFunction($var, $expectedVar) {
// check if empty and equal
}