isset 一般用来检测变量是否设置
isset($a); 若$a 没有定义(var_dump时会报notice),返回false,或者 变量中的某个key没有set
isset(null); 返回 false
若变量不存在,如:
1 | $a['c'] = 1; |
其他返回true
empty 判断值是否为空或者是否为0
1 | $a; |
“”、0、”0”、NULL、、FALSE、array()、var $var; 返回true,只要一切不存在的,都返回true
一切有值,有意义的返回false
类似于 ! $val;
注意: 若 $a = ‘0’,此时0为字符串,也是true,因为是检测为空,或者为0
is_null 判断是否为null
1 | $a; 或者 $a = null; |
表格:
变量 | empty | is_null | isset |
---|---|---|---|
$a=”” | true | false | true |
$a=null | true | true | false |
var $a | true | true | false |
$a=array() | true | false | true |
$a=false | true | false | true |
$a=15 | false | false | true |
$a=1 | false | false | true |
$a=0 | true | false | true |
$a=”0” | true | false | true |
$a=”true” | false | false | true |
$a=”false” | false | false | true |