除isset()
或empty()
之外还有更好的方法来测试空变量吗?
答案 0 :(得分:4)
这取决于具体情况。
当变量的值不是isset()
时, NULL
将仅返回true(从而至少定义了变量)。
empty()
将返回true,通常这意味着0
,"0"
,NULL
,{{ 1}},FALSE
(空数组)和array()
(空字符串),其他任何内容都不为空。
一些例子
""
答案 1 :(得分:2)
请注意您使用PHP获得的一些奇怪的==结果;您可能需要使用===来获得您期望的结果,例如
if (0 == '') {
echo "weird, huh?\n";
}
if (0 === '') {
echo "weird, huh?\n";
} else {
echo "that makes more sense\n";
}
因为0是假,而空字符串是假,0 ==''与FALSE == FALSE相同,这是真的。使用===强制PHP检查类型。