首页 > 语言 > PHP > 正文

PHP array_reduce()函数的应用解析

2024-09-04 11:42:19
字体:
来源:转载
供稿:网友

这篇文章主要介绍了PHP array_reduce()的应用,本文通过代码举例给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下。

实例

向用户自定义函数发送数组中的值,并返回一个字符串:

  1. <?php 
  2. function myfunction($v1,$v2
  3. return $v1 . "-" . $v2
  4. $a=array("Dog","Cat","Horse"); 
  5. print_r(array_reduce($a,"myfunction")); 
  6. ?> 

定义和用法

array_reduce() 函数向用户自定义函数发送数组中的值,并返回一个字符串。

注释:如果数组是空的且未传递 initial 参数,该函数返回 NULL。

说明

array_reduce() 函数用回调函数迭代地将数组简化为单一的值。

如果指定第三个参数,则该参数将被当成是数组中的第一个值来处理,或者如果数组为空的话就作为最终返回值。

下面给大家介绍下PHP array_reduce()的应用,具体内容如下所述:

array_reduce($array,$callback($carry,$item),$initial)用回调函数迭代计算数组元素,并返回最终结果。$carry携带上次迭代的值,如果是本次迭代的第一次,那么这个值是$initial。如果指定了$initial的值,该参数在处理开始前使用,或者处理结束后,被处理的数组为空时,返回此值。

  1. <?php 
  2. function func1($x,$y){ 
  3.   $y += $x
  4.   return $y
  5. $arr1 = array(1,2,3,4,5,6); 
  6. $return1 = array_reduce($arr1,"func1"); 
  7. echo $return1

结果:21

  1. function func2($x,$y){ 
  2.   echo $x.' == '.$y."<br>"
  3.   $y *= $x
  4.   return $y
  5. $arr2 = array(1,2,3,4); 
  6. $return2 = array_reduce($arr2,"func2"); 
  7. echo $return2

输出过程:

  1. == 1 
  2. 0 == 2 
  3. 0 == 3 
  4. 0 == 4 

最终结果:0

$return2 = array_reduce($arr2,"func2",1);

echo $return2;

输出过程:

  1. 1 == 1 
  2. 1 == 2 
  3. 2 == 3 
  4. 6 == 4 

最终结果:24

$return3 = array_reduce(array(),"func1",'no data');

echo $return3;

输出:'no data'

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表