php数组怎么去掉null值

1. 背景

在PHP中,我们常常需要处理数组,有时候我们会遇到数组中存在null值的情况,比如下面这个示例数组:

$example_array = array('apple', null, 'orange', null, 'banana');

在这个数组中,我们可以看到存在两个null值,如果我们希望将这些null值从数组中去掉,该怎么做呢?

2. 方案

有多种方法可以从数组中去掉null值。下面将介绍其中的两种方法。

2.1 使用array_filter()函数

array_filter()函数是PHP内置函数之一,可以用于过滤数组中不符合条件的值。我们可以将数组中的null值作为不符合条件的值进行过滤。

$example_array = array('apple', null, 'orange', null, 'banana');

$result_array = array_filter($example_array, function($value) {

return $value !== null;

});

print_r($result_array);

上述代码的执行结果为:

Array

(

[0] => apple

[2] => orange

[4] => banana

)

可以看到,结果数组中已经不包含null值。

上述代码中,我们使用了一个匿名函数作为array_filter()函数的第二个参数。这个匿名函数返回一个值,作为是否过滤这个元素的条件。在本例中,如果元素值不等于null,则不会被过滤掉。

2.2 使用foreach循环

另一个常用的方法是使用foreach循环来过滤数组中的null值。

$example_array = array('apple', null, 'orange', null, 'banana');

foreach($example_array as $key => $value) {

if($value === null) {

unset($example_array[$key]);

}

}

print_r($example_array);

上述代码的执行结果为:

Array

(

[0] => apple

[2] => orange

[4] => banana

)

可以看到,结果数组中已经不包含null值。

在这个例子中,我们使用foreach循环来遍历数组中的每个元素。如果这个元素的值等于null,则使用unset()函数删除这个元素。

3. 总结

本文介绍了两种去除PHP数组中null元素的方法。第一种方法是使用array_filter()函数,第二种方法是使用foreach循环。在实际应用中,我们可以根据情况选择适合自己的方法。

后端开发标签