array_reduce

(PHP 4 >= 4.0.5, PHP 5, PHP 7)

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

说明

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,该参数将在处理开始前使用,或者当处理结束,数组为空时的最后一个结果。

返回值

返回结果值。

initial 参数,array_reduce() 返回 NULL

更新日志

版本 说明
5.3.0 修改 initial 类型,允许传入 mixed,之前只能是 integer

范例

Example #1 array_reduce() 例子

<?php
function sum($carry$item)
{
    
$carry += $item;
    return 
$carry;
}

function 
product($carry$item)
{
    
$carry *= $item;
    return 
$carry;
}

$a = array(12345);
$x = array();

var_dump(array_reduce($a"sum")); // int(15)
var_dump(array_reduce($a"product"10)); // int(1200), because: 10*1*2*3*4*5
var_dump(array_reduce($x"sum""No data to reduce")); // string(17) "No data to reduce"
?>

参见

相关文章
php 数组 函数 用用户提供的回调函数做索引检查来计算数组的差集php 数组 函数 用回调函数对键名比较计算数组的差集php 数组 函数 用给定的值填充数组php 数组 函数 用回调函数过滤数组中的单元php 数组 函数 带索引检查计算数组的交集,用回调函数比较索引php 数组 函数 用回调函数比较键名来计算数组的交集php 数组 函数 为数组的每个元素应用回调函数php 数组 函数 以指定长度将一个值填充进数组php 数组 函数 用回调函数迭代地将数组简化为单一的值php 数组 函数 带索引检查计算数组的差集,用回调函数比较数据php 数组 函数 带索引检查计算数组的差集,用回调函数比较数据和索引php 数组 函数 用回调函数比较数据来计算数组的差集php 数组 函数 带索引检查计算数组的交集,用回调函数比较数据php 数组 函数 带索引检查计算数组的交集,用单独的回调函数比较数据和索引php 数组 函数 计算数组的交集,用回调函数比较数据php 函数处理 函数 调用回调函数,并把一个数组参数作为回调函数的参数php fann 函数 创建一个标准的反向传播神经网络,该网络使用一个表示每层大小的数组来构造,但是并不是全连接的。php 文件系统函数 把整个文件读入一个数组中php spl 函数 将迭代器中的元素拷贝到数组php 数组 函数 使用用户自定义的比较函数对数组中的值进行排序
关注编程学问公众号