php empty() 检查一个变量是否为空 |
本文标签:empty,变量是否为空 empty — 检查一个变量是否为空 Report a bug 描述 bool empty ( mixed $var ) 如果 var 是非空或非零的值,则 empty() 返回 FALSE 。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE 。 除了当变量没有置值时不产生警告之外,empty() 是 (boolean) var 的反义词 。参见转换为布尔值获取更多信息 。 Example #1 empty() 与 isset() 的一个简单比较 。 复制代码 代码如下: <?php $var = 0; // 结果为 true,因为 $var 为空 if (empty($var)) { echo $var is either 0 or not set at all; } // 结果为 false,因为 $var 已设置 if (!isset($var)) { echo $var is not set at all; } ?> Note: 因为是一个语言构造器而不是一个函数,不能被 可变函数 调用 。 Note: empty() 只检测变量,检测任何非变量的东西都将导致解析错误 。换句话说,后边的语句将不会起作用: empty(addslashes($name)) 。 The following things are considered to be empty: "" (an empty string) 0 (0 as an integer) 0.0 (0 as a float) "0" (0 as a string) NULL FALSE array() (an empty array) var $var; (a variable declared, but without a value in a class) 对"空数组"的理解:array() (an empty array) 复制代码 代码如下: <?php $array1=array(); print_r($array1); if(empty($array1)){ echo 对empty()来说是空数组(an empty array); } else{ echo 对empty()来说是非空数组(an noempty array); } ?> //显示结果:###################### Array ( ) //对empty()来说是an empty array ############################### <?php $array1=array(); $array1[]=; print_r($array1); if(empty($array1)){ echo 对empty()来说是空数组(an empty array); } else{ echo 对empty()来说是非空数组(an noempty array); } ?> //显示结果:###################### Array ( [0] => ) //对empty()来说是非空数组(an noempty array) //############################### //这个并不是空数组,因为它有一个元素为空字符(""),要注意和空字符("" (an empty string))区别; |