/

PHP empty 方法判断 0.0

在使用 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';
echo empty($str); // false 很可能和预期是相反的
echo empty((float)$str); // true

– EOF –