(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
array_reduce — Reduce itérativemente un array
array_reduce() aplica itérativemente
la función callback a los elementos del
array array, de manera que se reduce el
array a un valor simple.
arrayEl array de entrada.
callbackcarry
Contiene el valor devuelto de la iteración previa; en el caso de
la primera iteración, será el valor del parámetro
initial.
itemContiene el valor de la iteración actual.
initial
Si el argumento opcional initial
está disponible, será utilizado para inicializar el proceso,
o bien como valor final si el array está vacío.
Devuelve el valor resultante.
Si el array está vacío y el parámetro initial
no es pasado, array_reduce() devuelve null.
| Versión | Descripción |
|---|---|
| 8.0.0 |
Si callback espera que se pase un parámetro
por referencia, esta función ahora emitirá un E_WARNING.
|
Ejemplo #1 Ejemplo con array_reduce()
<?php
function sum($carry, $item)
{
$carry += $item;
return $carry;
}
function product($carry, $item)
{
$carry *= $item;
return $carry;
}
$a = array(1, 2, 3, 4, 5);
$x = array();
var_dump(array_reduce($a, "sum")); // int(15)
var_dump(array_reduce($a, "product", 10)); // int(1200), ya que: 10*1*2*3*4*5
var_dump(array_reduce($x, "sum", "No data to reduce")); // string(17) "No data to reduce"
?>