在下面的代码中,当$ start_limit和$ end_limit为FALSE时,应该运行A.相反,B正在发生。我已经用var_dump测试了两个变量都是FALSE。
我正在使用is_null,因为$ start_limit偶尔会设置为0,我想要一个0计为TRUE的条件。
if (is_null($start_limit) && is_null($end_limit)) {
A
} else {
B
}
当两个变量都为FALSE时,如何让A运行的任何建议都将非常受欢迎。
答案 0 :(得分:1)
只需使用强制到布尔值。 !0
和!false
都评估为true
。
if (!$start_limit && !$end_limit) {
// A
} else {
// B
}
答案 1 :(得分:0)
我认为你想使用===而不是is_null。 False不为null,但为0!== false。三重等式检查是您要查找的完全匹配的类型。
也许
if( false === $start_limit && !$end_limit ) {
// there are no limits, set the course for the heart of the sun!
}
else {
B
}