La función array_reduce
en PHP permite reducir un array a un solo valor aplicando una función de callback de forma iterativa a cada elemento del array. Es ideal para realizar cálculos acumulativos, como sumar todos los valores de un array o concatenar cadenas.
array_reduce
y cómo funciona?
La función array_reduce
recorre un array y aplica una función de callback, que recibe dos parámetros: un acumulador y el valor actual del array. El valor devuelto por la función de callback se convierte en el nuevo valor del acumulador y se utiliza en la siguiente iteración. Al finalizar, array_reduce
devuelve el valor acumulado final.
array_reduce
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
null
.
callback
Parámetro | Tipo | Descripción |
---|---|---|
acumulador | mixed | El valor acumulado hasta la iteración actual. |
valor | mixed | El valor del elemento actual del array. |
array_reduce
Este ejemplo utiliza array_reduce
para calcular la suma de los elementos en un array.
$numeros = [1, 2, 3, 4, 5];
$suma = array_reduce($numeros, function($acumulador, $valor) {
return $acumulador + $valor;
}, 0);
echo $suma; // Salida: 15
En este ejemplo, array_reduce
se usa para concatenar todos los elementos de un array de cadenas en una sola cadena.
$cadenas = ["Hola", "mundo", "!"];
$frase = array_reduce($cadenas, function($acumulador, $valor) {
return $acumulador . " " . $valor;
}, "");
echo $frase; // Salida: " Hola mundo !"
Aquí, array_reduce
calcula el producto de todos los elementos en un array.
$numeros = [2, 3, 4];
$producto = array_reduce($numeros, function($acumulador, $valor) {
return $acumulador * $valor;
}, 1);
echo $producto; // Salida: 24
Para más información sobre el uso de array_reduce
, consulta la documentación oficial de PHP.
Jorge García
Fullstack developer