如果我有$v = NULL;
,我该如何检查$v
是否存在且是NULL
?
isset($v) => false //because of NULL, but $v exists
答案 0 :(得分:5)
你不能,null
相当于一个不存在的变量:
如果出现以下情况,则认为变量为空
- 已为其分配常量
NULL
。- 尚未设置为任何值。
- 已经
unset()
。
仅对于数组,您可以使用array_key_exists
检查密钥是否存在,尽管其值为null
。
答案 1 :(得分:0)
尝试is_null($v)
。
答案 2 :(得分:0)
您应该谨慎使用isset
对null
的变量。这是一个很好的方法来为将来的错误和问题做好准备。
您现在可以做的是使用is_null
作为附加测试。
答案 3 :(得分:-1)
如果你想把它们放在一起测试存在和空值
<?php
if(!is_null($v)){
// do something
}
?>