array_reduce

用回调函数迭代地将数组简化为单一的值 (PHP 4 >= 4.0.5, PHP 5)
mixed array_reduce ( array input, callback function [, int initial] )

说明

array_reduce() 将回调函数 function 迭代地作用到 input 数组中的每一个单元中,从而将数组简化为单一的值。如果指定了可选参数 initial,该参数将被当成是数组中的第一个值来处理,或者如果数组为空的话就作为最终返回值。如果数组为空并且没有传递 initial 参数,array_reduce() 返回 NULL

例 251. array_reduce() 例子

<?php
function rsum($v, $w)
{
   
$v += $w;
   return
$v;
}

function
rmul($v, $w)
{
   
$v *= $w;
   return
$v;
}

$a = array(1, 2, 3, 4, 5);
$x = array();
$b = array_reduce($a, "rsum");
$c = array_reduce($a, "rmul", 10);
$d = array_reduce($x, "rsum", 1);
?>

这将使 $b 的值为 15$c 的值为 1200(= 10*1*2*3*4*5),以及 $d 的值为 1

参见 array_filter()array_map()array_unique()array_count_values()