首页 > 后端开发 > PHP问题 > php 怎么除去数组中null

php 怎么除去数组中null

PHPz
发布: 2023-04-25 10:19:02
原创
657 人浏览过

在PHP中,数组是一种非常常见的数据类型,而且很多情况下我们需要对数组进行处理。但是,在实际开发中,很可能会碰到数组中含有null值这种情况,而这时候我们需要对这些null值进行除去。那么,我们该如何在PHP中除去数组中的null值呢?接下来,本文将为大家介绍几种常用的方法。

方法一:使用array_filter()函数

array_filter() 函数是一个非常常用的PHP函数,其功能是过滤数组中的元素,可以根据自己定义的过滤函数过滤数组中的元素。我们可以很轻松地使用它来实现除去数组中null值的功能。下面是具体实现方法:

$arr = array('apple', null, 'orange', null, 'banana');
$arr = array_filter($arr, function($v){return !is_null($v);});
print_r($arr);
登录后复制

上述代码中,我们首先定义一个数组,然后使用array_filter()函数将其中满足条件的元素过滤出来,并将处理后的结果赋值给初始数组。最后输出处理后的数组。运行结果如下:

Array
(
    [0] => apple
    [2] => orange
    [4] => banana
)
登录后复制

可以看到,我们已经成功将数组中的null值除去了。

方法二:使用foreach循环

除了使用array_filter()函数外,我们还可以通过foreach循环来实现除去数组中null值的功能。具体实现方法如下:

$arr = array('apple', null, 'orange', null, 'banana');
$newArr = array();   //定义一个新数组,存放除去null值的元素
foreach($arr as $value){
    if(!is_null($value)){    //判断是否是null值
        array_push($newArr, $value);   //将非null值插入新数组
    }
}
print_r($newArr);   //输出新数组
登录后复制

上述代码中,我们首先定义一个初始数组,然后定义一个新数组来存放除去null值的元素。接着,我们使用foreach循环对初始数组中的每个元素进行遍历,当元素不是null值时,将其插入到新数组中。最后输出处理后的数组。运行结果与方法一相同。

方法三:使用array_diff()函数

除去数组中null值的方法三是使用array_diff()函数,通过求一个数组与其它数组的差集,可以实现集合运算的功能。这里我们可以将原数组除去null之后生成一个新的数组,然后与原数组求差集,即可得到除去null值的数组。下面是具体实现方法:

$arr = array('apple', null, 'orange', null, 'banana');
$newArr = array_diff($arr, array(null));   //生成新数组,并与原数组求差集
print_r($newArr);    //输出新数组
登录后复制

上述代码中,我们首先定义一个初始数组,然后使用array_diff()函数将其中不包含null值的元素组成一个新的数组。最终输出新数组。

小结

在PHP中除去数组中的null值有三种方法:使用array_filter()函数、使用foreach循环和使用array_diff()函数。其中,使用array_filter()函数和foreach循环都是比较常用的实现方法,而使用array_diff()函数的方法则比较简洁。在具体开发中,我们可以根据实际需求选择相应的方法。

以上是php 怎么除去数组中null的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板