array_reduce

这个函数在中间件调度器的实现上会用到,这里记录一下该函数的使用方式。

array_reduce

【array_[rɪˈduːs]】

说明:
array_reduce ( array $array , callable $callback [, mixed $initial = NULL ] ) : mixed

array_reduce() 将回调函数 callback 迭代地作用到 array 数组中的每一个单元中,从而将数组简化为单一的值。

参数:

  • array
    输入的 array。

  • callback
    callback ( mixed $carry , mixed $item ) : mixed
    carry
    携带上次迭代里的值; 如果本次迭代是第一次,那么这个值是 initial。

  • item
    携带了本次迭代的值。

  • initial
    如果指定了可选参数 initial,该参数将在处理开始前使用,或者当处理结束,数组为空时的最后一个结果。

<?php

https://www.php.net/manual/zh/function.array-reduce.php

// 也就是说,array_reduce接受两个必须参数,第一个参数是数组,第二个参数是一个函数。
// array_reduce会把数组每个元素都用函数调用,该函数接受两个参数(上次迭代里的值,这次迭代到的元素)。

function myfunc($carry, $item)
{
	// 输出上次迭代里的值以及这次迭代到的元素
	echo $carry.'-'.$item;
}
$array = ['a','b','c'];
array_reduce($array, 'myfunc');

输出结果为:-a-b-c


// 如果使用第三个可选参数,也就是迭代第一个item时给,carry的初始值。
array_reduce($array, 'myfunc','first');
输出结果为:first-a-b-c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值