array_reduce

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

array_reduceReduziert das Array mittels einer Callback-Funktion iterativ auf einen einzigen Wert

Beschreibung

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

array_reduce() wendet die Funktion callback iterativ auf die Elemente des Arrays array so an, dass das Array auf einen einzigen Wert reduziert wird.

Parameter-Liste

array

Das Eingabe-Array.

callback
callback(mixed$carry, mixed$item): mixed
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.

Rückgabewerte

Gibt den sich ergebenden Wert zurück.

Falls das Array leer ist und initial nicht angegeben wurde, so wird array_reduce()null zurückgeben.

Changelog

VersionBeschreibung
8.0.0 Wenn callback einen per Referenz übergebenen Parameter erwartet, gibt diese Funktion nun einen Fehler der Stufe E_WARNING aus.

Beispiele

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"
?>

Siehe auch

To Top