(PHP 4 >= 4.0.5, PHP 5, PHP 7)
array_reduce — Iterative Reduktion eines Arrays zu einem Wert mittels einer Callbackfunktion
array_reduce() wendet die Funktion
callback
iterativ auf die Elemente des Arrays
array
so an, dass das Array auf einen einzigen
Wert reduziert wird.
array
Das Eingabe-Array.
callback
carry
Enthält den Rückgabewert des vorherigen Durchgangs. Im Fall des ersten
Durchlaufs enthält dies stattdessen den Wert von
initial
.
item
Enthält den Wert des aktuellen Durchgangs.
initial
Ist der optionale Parameter intial
angegeben,
wird er am Anfang des Prozesses benutzt oder als Resultat verwendet,
sollte das Array leer sein.
Gibt den sich ergebenden Wert zurück.
Falls das Array leer ist und initial
nicht
angegeben wurde, so wird array_reduce() NULL
zurückgeben.
Version | Beschreibung |
---|---|
5.3.0 |
Der von initial akzeptierte Datentyp wurde zu
Mixed geändert, vorher war dies Integer.
|
Beispiel #1 array_reduce()-Beispiel
<?php
function summe($carry, $item)
{
$carry += $item;
return $carry;
}
function produkt($carry, $item)
{
$carry *= $item;
return $carry;
}
$a = array(1, 2, 3, 4, 5);
$x = array();
var_dump(array_reduce($a, "summe")); // int(15)
var_dump(array_reduce($a, "produkt", 10)); // int(1200), da: 10*1*2*3*4*5
var_dump(array_reduce($x, "summe", "Keine Daten für die Reduktion"));
// string(29) "Keine Daten für die Reduktion"
?>