发布日期:2018-03-26
在PHP中如何检查数组为空?+ 查看更多
在PHP中如何检查数组为空?
+ 查看更多
发布日期:2018-03-07 17:37
分类:PHP
浏览次数:45
代码如下:
$error = array(); $error['something'] = false; $error['somethingelse'] = false; if (!empty($error)) { echo 'Error'; } else { echo 'No errors'; }
可是,empty($error)仍然返回true值,即时它未被设置
哪里不对呢?
哪里不对呢?
回答
在数组中有两个元素当然不意味着它为空。你可以参考如下快速解决方案:$errors = array_filter($errors); if (!empty($errors)) { }
array_filter()这个函数的默认行为是:当数组被赋值为null,0,' '或false时,从数组中清除所有值。
否则在你这种特定情况下,如果数组中至少有一个元素即使它为空值,empty()这个函数将总是返回true值。
否则在你这种特定情况下,如果数组中至少有一个元素即使它为空值,empty()这个函数将总是返回true值。