(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.
arrayDas 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.