php为空的几个判断

来源:互联网 发布:js验证身份证 编辑:程序博客网 时间:2024/05/22 01:31

数组:

count($arr),size($arr);

empty($arr);

 

变量:

isset:

它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过。当使用isset来判断数组元素是否被初始化过时,它的效率比array_key_exists高4倍左右 isset($a[‘s’])

 

empty:

任何一个未初始化的变量、值为 0 或false 或 空字符串”” 或 null的变量、空数组、没有任何属性的对象,都将判断为empty==true
注意2:empty只能检测变量,而不能检测语句

 

var == null:

判断变量是否为“空”
说明:值为 0 或 false 或 空字符串”” 或 null的变量、空数组、都将判断为 null
注意:与empty的显著不同就是:变量未初始化时 var == null 将会报错。

is_null:

检测变量是否为“null”
说明:当变量被赋值为“null”时,检测结果为true
注意1:null不区分大小写:$a = null; $a = NULL 没有任何区别
注意2:仅在变量的值为“null”时,检测结果才为true,0、空字符串、false、空数组都检测为false
注意3:变量未初始化时,程序将会报错

 

总结

isset  主要用来判断变量是否被初始化过
empty  可以将值为 “假”、“空”、“0”、“NULL”、“未初始化” 的变量都判断为TRUE
is_null  仅把值为 “NULL” 的变量判断为TRUE