php数组怎么去掉null值
时间 : 2023-02-16 14:50:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

PHP数组也可称作聚合(也叫对象数组),它由一系列的键值对组成,键可以是整数,字符串或者符号化的名称,而值可以是几乎任何东西,不论是基本的数据类型如整数,字符串,浮点数,数组,true/false等,还是PHP内置的复杂数据类型之一的对象。有时候,我们会遇到一个特殊的数组,这个数组中会包含一些null值,即键对应值不存在的情况。有时候我们可能需要去掉这些null值,那么PHP数组中当键没有对应的值的情况下,怎么去掉null值的方法呢?

第一种方法是用PHP的array_filter函数来过滤数组,它可以把数组中的每一个值过滤一遍,如果值为null,则不保存在新的一维数组中,代码如下:

$arr = array(1,2,3,4,null,5,null);

$arr = array_filter ($arr);

// 返回值 $arr = array(1,2,3,4,5);

//即去掉了null值

第二种方法是使用另一种PHP函数,array_map函数,它可以映射一个函数到数组里面每一个值上。例如,我们想要把数组中的所有null值替换成某个固定的值,如字符串“null”,可以利用array_map函数的第二个参数(它可以传入一个函数),将数组值统一处理,代码如下:

$arr = array(1,2,3,4,null,5,null);

$arr = array_map(function ($v) {

return $v ? $v : 'null';

}, $arr);

// 返回值 $arr = array(1,2,3,4,'null',5,'null');

//即把null值替换成字符串“null”

第三种方法就是直接循环遍历数组,

PHP数组是非常常用的语言特性,它们可以存储多种类型的数据,但当数组中出现null值时,我们可能需要将其去掉。本文将介绍如何利用php数组怎么去掉null值。

首先,我们可以使用PHP中的array_filter函数,它可以去掉数组中的null值,该函数具有默认参数设置,即当我们使用时,可以轻松将null值去掉。该函数的代码可以用以下形式表示:

$filteredArray = array_filter($originalArray);

其次,我们还可以使用PHP中的array_values函数,它可以将null值重新赋值给一个新的数组,从而使其不再是null值,而是空值。该函数的代码如下所示:

$newArray = array_values($originalArray);

此外,我们也可以使用PHP中的array_diff函数,它可以返回数组中不相等的值。这样,我们可以将null值从数组中去掉。该函数的代码如下所示:

$diffArray = array_diff($originalArray, array(null));

最后,我们可以使用array_walk函数,这是一个可以在数组上调用用户自定义函数的函数,我们可以使用该函数只保留想要的值,并将null值置空。该函数的代码如下所示:

$resultArray = array();

array_walk($originalArray, function($value)use($resultArray){

If($value!==null){

$resultArray[] = $value;

}

});

以上就是关于php数组怎么去掉null值的介绍,使用以上方法,我们可以轻松将null值从数组中去掉,有助于我们更好地处理数据,提高程序运行效率。