PHP array_reduce()函数的应用解析
这篇文章主要介绍了PHP array_reduce()的应用,本文通过代码举例给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下。
实例
向用户自定义函数发送数组中的值,并返回一个字符串:
- <?php
- function myfunction($v1,$v2)
- {
- return $v1 . "-" . $v2;
- }
- $a=array("Dog","Cat","Horse");
- print_r(array_reduce($a,"myfunction"));
- ?>
定义和用法
array_reduce() 函数向用户自定义函数发送数组中的值,并返回一个字符串。
注释:如果数组是空的且未传递 initial 参数,该函数返回 NULL。
说明
array_reduce() 函数用回调函数迭代地将数组简化为单一的值。
如果指定第三个参数,则该参数将被当成是数组中的第一个值来处理,或者如果数组为空的话就作为最终返回值。
下面给大家介绍下PHP array_reduce()的应用,具体内容如下所述:
array_reduce($array,$callback($carry,$item),$initial)用回调函数迭代计算数组元素,并返回最终结果。$carry携带上次迭代的值,如果是本次迭代的第一次,那么这个值是$initial。如果指定了$initial的值,该参数在处理开始前使用,或者处理结束后,被处理的数组为空时,返回此值。
- <?php
- function func1($x,$y){
- $y += $x;
- return $y;
- }
- $arr1 = array(1,2,3,4,5,6);
- $return1 = array_reduce($arr1,"func1");
- echo $return1;
结果:21
- function func2($x,$y){
- echo $x.' == '.$y."<br>";
- $y *= $x;
- return $y;
- }
- $arr2 = array(1,2,3,4);
- $return2 = array_reduce($arr2,"func2");
- echo $return2;
输出过程:
- == 1
- 0 == 2
- 0 == 3
- 0 == 4
最终结果:0
$return2 = array_reduce($arr2,"func2",1);
echo $return2;
输出过程:
- 1 == 1
- 1 == 2
- 2 == 3
- 6 == 4
最终结果:24
$return3 = array_reduce(array(),"func1",'no data');
echo $return3;
输出:'no data'