184 of 410 menu

Funktion array_reduce

Die Funktion array_reduce reduziert (faltet) ein Array auf einen einzelnen Wert unter Verwendung eines Callbacks.

Im ersten Parameter akzeptiert die Funktion ein Array, im zweiten - den Callback, der nacheinander auf jedes Element des Arrays angewendet wird.

Im dritten optionalen Parameter wird der Startwert übergeben, mit dem die Reduzierung des Arrays beginnt. Standardmäßig hat dieser Parameter den Wert null.

Die Callback-Funktion erhält zwei Parameter. Der erste Parameter enthält den Ergebniswert aus der vorherigen Iteration. Im Falle der ersten Iteration enthält er den Wert des dritten Parameters.

Und der zweite Parameter des Callbacks enthält das aktuelle Element des Arrays.

Der Callback wird nacheinander auf jedes Element des Arrays angewendet. Der Wert, den der Callback in der aktuellen Iteration zurückgibt, gelangt in den ersten Parameter des Callbacks in der nächsten Iteration.

Auf diese Weise wird der Callback sequentiell auf jedes Element des Arrays der Reihe nach angewendet, und es entsteht letztendlich ein bestimmter Wert. Dieser Wert ist das Ergebnis der Arbeit der Funktion array_reduce.

Syntax

array_reduce(array $array, callable $callback, mixed $initial = null): mixed

Beispiel

Lassen Sie uns die Summe der Elemente des Arrays finden:

<?php $arr = [1, 2, 3, 4, 5]; function func($prev, $elem) { return $prev + $elem; } $res = array_reduce($arr, 'func', 0); echo $res; ?>

Ergebnis der Codeausführung:

15

Siehe auch

  • die Funktion array_map,
    die eine Funktion auf die Elemente eines Arrays anwendet
  • die Funktion array_walk,
    die eine Funktion für die Elemente eines Arrays aufruft
  • die Funktion array_filter,
    die ein Array filtert
  • die Funktion array_walk_recursive,
    die rekursiv eine Funktion für die Elemente eines Arrays aufruft
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen