定义和用法
array_reduce() 函数向用户自定义函数发送数组中的值,并返回一个字符串。
注释:如果数组是空的且未传递 initial 参数,该函数返回 NULL。
说明
array_reduce() 函数用回调函数迭代地将数组简化为单一的值。
如果指定第三个参数,则该参数将被当成是数组中的第一个值来处理,或者如果数组为空的话就作为最终返回值。
<?php function sum($carry, $item) { $carry += $item; return $carry; } function product($carry, $item) { $carry *= $item; return $carry; } $a = array(1, 2, 3, 4, 5); $x = array(); var_dump(array_reduce($a, "sum")); // int(15) echo "<br/>"; var_dump(array_reduce($a, "product", 10)); // int(1200), because: 10*1*2*3*4*5 echo "<br/>"; var_dump(array_reduce($x, "sum", "No data to reduce")); // string(17) "No data to reduce" function myfunction($v1,$v2) { return $v1+$v2; } $a=array(10,15,20); print_r(array_reduce($a,"myfunction",5));//50 ?>
W3school:https://www.w3school.com.cn/php/func_array_reduce.asp