PHP array_reduce()函数的应用解析

所属分类: 网络编程 / PHP编程 阅读数: 285
收藏 0 赞 0 分享

实例

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

<?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'

以上所述是小编给大家介绍的PHP array_reduce()函数的应用解析,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

更多精彩内容其他人还在看

解决laravel中日志权限莫名变成了root的问题

今天小编就为大家分享一篇解决laravel中日志权限莫名变成了root的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Laravel框架中集成MongoDB和使用详解

今天小编就为大家分享一篇Laravel框架中集成MongoDB和使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅谈laravel框架sql中groupBy之后排序的问题

今天小编就为大家分享一篇浅谈laravel框架sql中groupBy之后排序的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

mac pecl 安装php7.1扩展教程

今天小编就为大家分享一篇mac pecl 安装php7.1扩展教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Mac下关于PHP环境和扩展的安装详解

今天小编就为大家分享一篇Mac下关于PHP环境和扩展的安装详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

laravel 解决groupBy时出现的错误 isn't in Group By问题

今天小编就为大家分享一篇laravel 解决groupBy时出现的错误 isn't in Group By问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Laravel 框架返回状态拦截代码

今天小编就为大家分享一篇Laravel 框架返回状态拦截代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

在laravel框架中实现封装公共方法全局调用

今天小编就为大家分享一篇在laravel框架中实现封装公共方法全局调用,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

在Laravel 的 Blade 模版中实现定义变量

今天小编就为大家分享一篇在Laravel 的 Blade 模版中实现定义变量,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Laravel基础_关于view共享数据的示例讲解

今天小编就为大家分享一篇Laravel基础_关于view共享数据的示例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多