代码将解释更多:
$var = 0; if (!empty($var)){ echo "Its not empty"; } else { echo "Its empty"; }
结果返回“它是空的”。我认为 empty() 会检查我是否已经设置了变量并在里面有值。为什么它返回“它是空的”?
http://php.net/empty
以下内容被认为是空的: ”“(一个空字符串) 0(0 为整数) 0.0(0 作为浮点数) “0” (0 作为字符串) 无效的 错误的 array() (一个空数组) 变量$变量;(声明的变量,但在类中没有值)
以下内容被认为是空的:
请注意,这与强制转换为 Boolean 的列表完全相同false。empty简直就是!isset($var) || !$var。试试isset吧。
false
empty
!isset($var) || !$var
isset