PHP array_reduce()函数的应用解析


Posted in PHP onOctober 28, 2018

实例

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

<?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()函数的应用解析,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

PHP 相关文章推荐
php error_log 函数的使用
Apr 13 PHP
php中利用str_pad函数生成数字递增形式的产品编号
Sep 30 PHP
php实现httpRequest的方法
Mar 13 PHP
微信获取用户地理位置信息的原理与步骤
Nov 12 PHP
如何使用微信公众平台开发模式实现多客服
Jan 06 PHP
PHP使用数组依次替换字符串中匹配项
Jan 08 PHP
thinkphp自定义权限管理之名称判断方法
Apr 01 PHP
THINKPHP在添加数据的时候获取主键id的值方法
Apr 03 PHP
解决php-fpm.service not found问题的办法
Jun 06 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
Feb 07 PHP
thinkphp5框架扩展redis类方法示例
May 06 PHP
php的单例模式及应用场景详解
Feb 27 PHP
php 中phar包的使用教程详解
Oct 26 #PHP
Linux基于php-fpm模式的lamp搭建phpmyadmin的方法
Oct 25 #PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
Oct 24 #PHP
实例解析php的数据类型
Oct 24 #PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
Oct 23 #PHP
PHP中使用mpdf 导出PDF文件的实现方法
Oct 22 #PHP
php微信公众号开发之答题连闯三关
Oct 20 #PHP
You might like
PHP中使用数组实现堆栈数据结构的代码
2012/02/05 PHP
php中serialize序列化与json性能测试的示例分析
2013/04/27 PHP
php读取富文本的时p标签会出现红线是怎么回事
2014/05/13 PHP
php图像处理类实例
2015/07/28 PHP
根据key删除数组中指定的元素实现方法
2017/03/02 PHP
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
网站页面自动跳转实现方法PHP、JSP(上)
2010/08/01 Javascript
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
JavaScript实现x秒后自动跳转到一个页面
2013/01/03 Javascript
jquery 表格的增行删行实现思路
2013/03/21 Javascript
JavaScript动态插入script的基本思路及实现函数
2013/11/11 Javascript
input禁止键盘及中文输入,但可以点击
2014/02/13 Javascript
js纯数字逐一停止显示效果的实现代码
2016/03/16 Javascript
Angular排序实例详解
2017/06/28 Javascript
JS获取子节点、父节点和兄弟节点的方法实例总结
2018/07/06 Javascript
layer弹出层 iframe层去掉滚动条的实例代码
2018/08/17 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
react国际化化插件react-i18n-auto使用详解
2020/03/31 Javascript
Python实现批量修改文件名实例
2015/07/08 Python
Python中的数据对象持久化存储模块pickle的使用示例
2016/03/03 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
Django中使用第三方登录的示例代码
2018/08/20 Python
python使用thrift教程的方法示例
2019/03/21 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
python实现堆排序的实例讲解
2020/02/21 Python
如何在VSCode下使用Jupyter的教程详解
2020/07/13 Python
BCBG官网:BCBGMAXAZRIA
2017/12/29 全球购物
韩国演唱会订票网站:StubHub韩国
2019/01/17 全球购物
DOUGLAS波兰:在线销售香水和化妆品
2020/07/05 全球购物
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
如何提高SQL Server的安全性
2016/07/25 面试题
毕业典礼邀请函
2015/01/31 职场文书
放假通知
2015/04/14 职场文书
大学生志愿者心得体会
2016/01/15 职场文书
初二数学教学反思
2016/02/17 职场文书
详解Redis的三种常用的缓存读写策略步骤
2022/05/06 Redis