hi,欢迎访问本站!
当前位置: 首页编程开发正文

php数组过滤的方法

墨初 编程开发 685阅读

php中的数组元素过滤可以使用数组处理函数array_filter,此函数可以根据自已自定义的规则来过滤数组中的元素,下面是array_filter函数的具体用法。

php array_filter 函数

array_filter:根据自定义的规则来过滤数组中的元素,并返回处理后数组。

语法:

array array_filter(array,callable,flag)

参数:

参数描述
array必需。规定要过滤的数组。
callback可选。规定要用的回调函数。
flag

可选。决定 callback 接收的参数形式:

ARRAY_FILTER_USE_KEY - callback 接受键名作为的唯一参数

ARRAY_FILTER_USE_BOTH - callback 同时接受键名和键值

php过滤数组中的空值

例:

# https://www.73so.com
$arr = array('1',2,'',null,5);
print_r(array_filter($arr));
// Array ( [0] => 1 [1] => 2 [4] => 5 )

注意:array_filter函数过滤后的新组中的元素键与原有的未过滤中的元素键一样,不会被改变。

php array_filter 使用回调函数

# https://www.73so.com
// 这里是回调函数
function a($var,$key)
{
    echo 'key='.$key.'  var='.$var;
    echo '<br/>';
}
$arr = array('a','b','c','d');
print_r(array_filter($arr,'a',ARRAY_FILTER_USE_BOTH));

php过滤数据中的字母

array_filter通过回调函数判断数组中的元素是否为字母,如果为字母则过滤不返回!

// 回调函数
function aa($var){
    if(is_numeric($var)){
        return $var;
    }
}
$arr = array('a','b','c','1','2','3');
print_r(array_filter($arr,'aa'));
// Array ( [3] => 1 [4] => 2 [5] => 3 )
标签:
声明:无特别说明,转载请标明本文来源!
相关推荐