PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

php怎么去除数组的空值

WBOY
WBOY 原创
2023-05-11 10:26:06 717浏览

在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循环遍历数组

我们也可以使用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怎么去除数组的空值的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。