(PHP 4 >= 4.0.1, PHP 5, PHP 7)
array_unique — Entfernt doppelte Werte aus einem Array
$array
[, int $sort_flags
= SORT_STRING
] )
Erwartet ein array
und gibt ein neues Array
zurück, aus dem alle doppelten Einträge entfernt wurden.
Beachten Sie, dass Schlüssel bewahrt bleiben.
Werden mehrere Elemente gemäß den angegebenen sort_flags
als gleich interpretiert, dann werden Schlüssel und Wert des ersten gleichen
Elements bewahrt.
Hinweis: Zwei Elemente werden nur dann als gleich angesehen, wenn (string) $elem1 === (string) $elem2, d.h. wenn die String-Repräsentation die gleiche ist, wird das erste Element verwendet.
array
Das Eingabe-Array.
sort_flags
Der optionale zweite Parameter sort_flags
kann mit den folgenden Werten genutzt werden, um das
Sortierverhalten zu ändern:
Sorting type flags:
SORT_REGULAR
- vergleicht die
Einträge normal (keine Typänderung)
SORT_NUMERIC
- vergleicht die
Einträge numerisch
SORT_STRING
- vergleicht die
Einträge als Strings
SORT_LOCALE_STRING
- vergleicht
die Einträge als Strings, basierend auf der aktuellen Locale.
Gibt das gefilterte Array zurück.
Version | Beschreibung |
---|---|
5.2.10 |
Der Standardwert von sort_flags wurde auf
SORT_STRING zurückgesetzt.
|
5.2.9 |
Der optionale Parameter sort_flags
wurde mit dem Standardwert SORT_REGULAR hinzugefügt.
Vor 5.2.9 wurde die Sortierung intern mit SORT_STRING
durchgeführt.
|
Beispiel #1 array_unique()-Beispiel
<?php
$input = array("a" => "grün", "rot", "b" => "grün", "blau", "rot");
$result = array_unique($input);
print_r($result);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array ( [a] => grün [0] => rot [1] => blau )
Beispiel #2 array_unique() und Typen
<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(2) { [0] => int(4) [2] => string(1) "3" }
Hinweis: Beachten Sie, dass array_unique() nicht dazu gedacht ist, auf mehrdimensionalen Arrays zu arbeiten.