184 of 410 menu

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
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta