(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
array_reduce — Reduziert das Array mittels einer Callback-Funktion iterativ auf einen einzigen Wert
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 initial
angegeben, wird er am Anfang des Prozesses benutzt oder als Resultat verwendet, falls das Array leer ist.
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 |
---|---|
8.0.0 | Wenn callback einen per Referenz übergebenen Parameter erwartet, gibt diese Funktion nun einen Fehler der Stufe E_WARNING aus. |
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"
?>