- empty - 检查一个变量 是否为空。(这里需要注意,仅支持判断变量,任何其他东西将会导致一个解析错误。php5.5之后也支持表达式的判断。)
bool empty( mixed $var)
判断一个变量是否被认为是空的。当一个变量并不存在或者它的值等同于FALSE,那么它会被认为不存在。如果变量不存在,empty()并不会产生警告。
empty()本质上和下面表达式是等价的。
!isset($var) || $var == false
返回值
- 变量不存在返回 FALSE.
- 变量存在,并且是一个 非空非零 的值时返回 FALSE 否则返回 TRUE.
下面东西被认为是空的:
- ""(空字符串)
- 0(作为整数的0)
- 0.0(作为浮点数的0)
- "0"(作为字符串的0)
- NULL
- FALSE
- array()(空数组)
- $var;(声明但没有值的变量)
2.isset-检测 变量 是否被设置并且非NULL
- 如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。
- 若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。
- 如果一次传入多个参数,那么 isset() 只有在 全部参数 都以被设置时返回 TRUE 计算过程从左至右,中途遇到没有设置的变量时就会立即停止。
由上可知当用 isset() 的参数是一个数组时,那么只用当数组中的所有都不为 NULL 时,才能返回 TRUE .