在php中,有时候我们需要去除数组中的空值,以便我们更好地处理数据。本文将探讨使用不同方法去除数组中的空值。
方法一:使用array_filter函数
array_filter()函数是PHP内置的用来过滤数组元素的函数,当传递回调函数时,该函数返回一个只包含回调函数返回值不为 FALSE(即不为null、0、“ ”、“0”、false、array())的新数组。我们可以使用该函数来去除数组中的空值,示例代码如下:
$arr = array('foo', 0, '', null, false, 'bar', ' ', '0', array());$arr = array_filter($arr); //过滤print_r($arr); //只剩下 'foo'、'bar'
登录后复制
结果如下:
Array( [0] => foo [5] => bar)
登录后复制登录后复制登录后复制
方法二:使用foreach循环遍历数组
立即学习“PHP免费学习笔记(深入)”;
我们也可以使用foreach循环遍历数组,手动去除其中的空值,示例代码如下:
$arr = array('foo', 0, '', null, false, 'bar', ' ', '0', array());foreach ($arr as $key => $value) { if (empty($value)) { unset($arr[$key]); //去除数组中的空值 }}print_r($arr); //只剩下 'foo'、'bar'
登录后复制
结果同样为:
Array( [0] => foo [5] => bar)
登录后复制登录后复制登录后复制
方法三:使用array_diff函数
我们还可以使用array_diff()函数,该函数用于返回一个数组,该数组包含了所有在第一个参数数组中但不在其余参数数组中的值。也就是说,我们可以将空值放到第二个参数中去,示例代码如下:
$arr = array('foo', 0, '', null, false, 'bar', ' ', '0', array());$arr = array_diff($arr, array('')); //去除数组中的空值print_r($arr); //只剩下 'foo'、'bar'
登录后复制
结果同样为:
Array( [0] => foo [5] => bar)
登录后复制登录后复制登录后复制
综上所述,我们有多种方法可以去除PHP数组中的空值,其中使用array_filter()函数最为方便。但是,如果你需要手动处理数组中的每一个元素,那么使用foreach循环可能会更好一些。
以上就是php怎么去除数组的空值的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1996119.html