当我们遍历数组时,有时候需要剔除数组中的空字符元素以得到有效数据。array_filter()
函数可以帮助我们完成这项任务。
函数原型
在介绍使用方法前,先看一下该函数的原型:
array array_filter ( array $input [, callable $callback [, int $flag = 0 ]] )
参数说明
$input
:必需,表示待过滤数组。$callback
:可选,表示自定义过滤回调函数。$flag
:可选,表示数组过滤时的行为标志。默认值为 0,表示不挑选空元素。
返回值
该函数返回过滤后的数组,如果出错则返回 false。
使用方法
下面给出两个示例说明该函数的使用方法。假设有如下数组:
$arr = array('foo', '', 0, false, null, 'bar');
示例 1:默认过滤
使用默认过滤方法即可快速除去数组中的空字符元素:
$newArr = array_filter($arr);
print_r($newArr);
输出结果:
Array
(
[0] => foo
[5] => bar
)
可以看到,使用默认过滤方法后,返回了新数组,其中只剩下原数组中的非空字符元素。
示例 2:自定义过滤
假设现在只知道需要留下值非零的元素,可以自定义过滤回调函数:
function customFilter($val) {
return ($val !== 0 && $val !== '');
}
$newArr = array_filter($arr, 'customFilter');
print_r($newArr);
输出结果:
Array
(
[0] => foo
[5] => bar
)
可以看到,使用自定义过滤函数后,也返回了新数组,其中只剩下值非零的元素。
总结
本文介绍了 array_filter()
函数用于除去数组中的空字符元素的方法,包括函数原型,参数说明和返回值,以及两个使用方法示例。通过本文的讲解,相信读者已经学会了如何使用该函数来过滤数组。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php array_filter除去数组中的空字符元素 - Python技术站