PHP Handbuch
Zurück |  | Nach vorne

# array_filter

(PHP 4 >= 4.0.6)

array_filter -- Filtert Elemente eines Arrays mittels einer Callback-Funktion

## Beschreibung

array array_filter ( array input [, mixed callback])

array_filter() gibt ein Array mit den mittels der Callback-Funktion gefilterten Elementen von `input` zurück. Ist `input` ein assoziatives Array, bleiben die Schlüssel erhalten.

Beispiel 1. array_filter()

    function ungerade($var) {
        return ($var % 2 == 1);
    }

    function gerade($var) {
        return ($var % 2 == 0);
    }

    $array1 = array ("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
    $array2 = array (6, 7, 8, 9, 10, 11, 12);

    echo "Ungerade :\n";
    print_r(array_filter($array1, "ungerade"));
    echo "Gerade:\n";
    print_r(array_filter($array2, "gerade"));

Wird folgendes ausgeben:

    Ungerade :
    Array
    (
        [a] => 1
        [c] => 3
        [e] => 5
    )
    Gerade:
    Array
    (
        [0] => 6
        [2] => 8
        [4] => 10
        [6] => 12
    )

> Anmerkung: Anstelle eines Funktionsnamens kann auch ein Array mit einer Objekt-Referenz und dem Namen einer Methode angegeben werden.

Von der Benutzerfunktion aus darf das Array selbst nicht geändert werden, wie zum Beispiel durch Hinzufügen oder Löschen eines Elementes, oder auch Löschen des Arrays, auf das array_filter() angewendet wird. Ist das Array geändert, so ist das Verhalten dieser Funktion undefiniert.

Siehe auch array_map() und array_reduce().

Zurück | Zum Anfang | Nach vorne
array_fill | Nach oben | array_flip