php array_filter除去数组中的空字符元素

当我们遍历数组时,有时候需要剔除数组中的空字符元素以得到有效数据。array_filter() 函数可以帮助我们完成这项任务。

当我们遍历数组时,有时候需要剔除数组中的空字符元素以得到有效数据。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除去数组中的空字符元素

基础教程推荐