PHP函数 array_filter() 用回调函数过滤数组中的元素

函数介绍

array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中,并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。

啰嗦一下,array_filter() 函数依次将array数组中的每个值传递到callback函数,如果ballback函数返回true,则array数组的当前值会包含在返回的结果数组中,数组键名保持不变。

函数用法

array_filter(array, callback)

参数及描述

array		必需,规定输入的数组;
callback	可选,自定义函数的名称。

注:如果回调函数 callback 未定义,则数组中为空或false的键将被去掉,也就是说可以利用 array_filter 过滤数组中为空的值

函数实例

<?php
function myfunction($v){
	if( $v==="Horse" ){
		return true;
	}
	return false;
}
$a=array(0=>"Dog",1=>"Cat",2=>"Horse");
print_r(array_filter($a,"myfunction"));
?>

输出:Array ( [2] => Horse )

参考其它几个PHP数组类函数文章:

PHP函数 array_keys() 返回数组键名建立新数组

PHP函数 array_intersect_key() 返回以键名比较的数组交集的数组

PHP函数 array_filter() 用回调函数过滤数组中的元素

更多PHP函数请移步 php函数