有许多值用于检查数组是否为空:
<?php
$arr1 = array(" ");
var_dump(empty($arr1));
$arr2 = array(0);
var_dump(empty($arr2));
$arr3 = array(null);
var_dump(empty($arr3));
$arr4 = array(false);
var_dump(empty($arr4));
?>
在 php 5.3.3 版本中,我得到的都是false。但是在 php 5.4 及更高版本中它会是真的吗?
不,语言构造的行为
empty很长一段时间都没有改变,甚至在 php4 中结果可能也是一样的。PHP5.x 和当前的 7.0 和 7.1 中的结果仍然是 4false。我不是在谈论未来的版本。也许有一天他们会改变他们的行为,但目前还没有听说过这样的计划。
我有这样的5.4版
bool(false) bool(false) bool(false) bool(false)