定义和用法

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

  (PHP 4 >= 4.0.6, PHP 5) 

  array_filter -- 用回调函数过滤数组中的单元

  array array_filter ( array input [, callback callback] )

  array_filter() 依次将 input 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则 input 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。

  用户不应在回调函数中修改数组本身。例如增加/删除单元或者对 array_filter() 正在作用的数组进行 unset。如果数组改变了,此函数的行为没有定义。

  如果没有提供 callback 函数,array_filter() 将删除 input 中所有等值为 FALSE 的条目。

例子 2.

 

array_filter()无 callback   
 'foo', 1 => false, 2 => -1, 3 => null, 4 => '' );   print_r(array_filter($entry));?>上例将输出:  Array([0] => foo,[2] => -1)语法  array_filter(array,function)参数    描述array    必需。规定输入的数组。function    必需。自定义函数的名称。  
"Dog",1=>"Cat",2=>"Horse");   print_r(array_filter($a,"myfunction"));?>输出:  Array ( [2] => Horse )