Funzione array_reduce
La funzione array_reduce riduce
un array a un singolo valore utilizzando una callback.
Il primo parametro della funzione accetta un array, il secondo - una callback, che verrà applicata sequenzialmente a ogni elemento dell'array.
Il terzo parametro opzionale
è il valore iniziale, da cui
inizierà la riduzione dell'array.
Per default questo parametro ha
valore null.
La funzione di callback riceve come parametri due valori. Il primo valore contiene il valore risultante dall'iterazione precedente. Nel caso della prima iterazione contiene il valore del terzo parametro.
E il secondo valore della callback contiene l'elemento corrente dell'array.
La callback verrà applicata sequenzialmente a ogni elemento dell'array. Ciò che verrà restituito dalla callback nell'iterazione corrente, andrà nel primo parametro della callback nell'iterazione successiva.
In questo modo, la callback viene applicata sequenzialmente
a ogni elemento dell'array
uno dopo l'altro e alla fine si ottiene un
valore. Questo valore sarà il risultato
del funzionamento della funzione array_reduce.
Sintassi
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Esempio
Troviamo la somma degli elementi dell'array:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Risultato dell'esecuzione del codice:
15
Vedi anche
-
la funzione
array_map,
che applica una funzione agli elementi di un array -
la funzione
array_walk,
che chiama una funzione per gli elementi di un array -
la funzione
array_filter,
che filtra un array -
la funzione
array_walk_recursive,
che chiama ricorsivamente una funzione per gli elementi di un array