在使用 empty(mixed $var)
时要考虑 $var
的 类型,尤其是在判断数据库查询后的字段。
bool empty(mixed $var) |
以下的东西被认为是空 true
的:
""
(空字符串)0
(作为整数的 0)0.0
(作为浮点数的 0)"0"
(作为字符串的 0)NULL
FALSE
array()
一个空数组$var
未初始化的变量new stdClass()
不包含任何属性的对象
注意: string 的判断要非常注意,数据库查询后的字段常常为 string,应该进行正确的类型转换。
以下的东西被认为是非空 false
的:
- $var = true;
- $var = 1;
- $var = -1;
- $var = “0.0”;
- $var = “foo”;
- $var = array(0);
- $var = new stdClass(); $var->property = null;
$str = '0.0'; |
– EOF –