淘先锋技术网

首页 1 2 3 4 5 6 7

在PHP中,数组是一种常用的数据类型,可以存储多个元素。同时,PHP还提供了一些内置函数,用于处理数组。array_filter就是其中一个常用的函数。array_filter函数可以过滤数组中的元素,并返回一个新的数组。

array_filter函数的使用非常灵活,可以通过传递不同的参数,实现不同的过滤方式。下面通过一些例子来介绍array_filter函数的常用用法。

1. 过滤掉数组中的空元素

$arr = array('apple', '', 'orange', 'pear');
$arr = array_filter($arr);
print_r($arr);

执行上述代码,会输出以下结果:

Array
(
[0] =>apple
[2] =>orange
[3] =>pear
)

可以看到,空元素已经被过滤掉了。

2. 过滤掉数组中小于5的数字

$arr = array(1, 6, 7, 2, 8, 3);
$arr = array_filter($arr, function($value) {
return $value >= 5;
});
print_r($arr);

执行上述代码,会输出以下结果:

Array
(
[1] =>6
[2] =>7
[4] =>8
)

可以看到,小于5的数字已经被过滤掉了。

3. 过滤关联数组中值为假的元素

$arr = array(
'name' =>'Tom',
'age' =>20,
'gender' =>'',
'address' =>null
);
$arr = array_filter($arr);
print_r($arr);

执行上述代码,会输出以下结果:

Array
(
[name] =>Tom
[age] =>20
)

可以看到,值为假(包括空字符串、0、false和null等)的元素已经被过滤掉了。

4. 自定义过滤函数

function filter($value) {
return $value >3 && $value< 7;
}
$arr = array(1, 5, 7, 2, 8);
$arr = array_filter($arr, 'filter');
print_r($arr);

执行上述代码,会输出以下结果:

Array
(
[1] =>5
[3] =>2
)

可以看到,只有满足自定义过滤函数filter的元素才会被保留。

总结:

array_filter函数是PHP中常用的一个数组处理函数,可以用来过滤数组中的元素,返回一个新的数组。在使用时,可以灵活传递不同的参数,实现不同的过滤方式。在实际开发中,array_filter函数可以帮助我们快速、方便地处理数组中的数据。