(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)
array_unique — Diziden yinelenen değerleri siler
dizi
dizisinden yinelenen değerleri sildikten sonra yeni diziyi döndürür.
Anahtarlar korunacaktır. seçenekler
bağımsız değişkeni ile belirtilen koşula göre anahtar ve değeri aynı olan ilk öğe korunur.
Bilginize: İki elemanın eşit kabul edilebilmesi için şu şart sağlanmış olmalıdır:
(string) $elem1 === (string) $elem2
. Yani, iki elemanın dizgesel gösterimleri aynıysa ilk eleman kullanılır.
dizi
Üzerinde işlem yapılacak dizi.
seçenekler
İsteğe bağlı bu bağımsız değişken ile işlevin davranışını değiştirebilirsiniz.
Olası seçenekler:
SORT_REGULAR
- öğeler normal olarak karşılaştırılır (türleri değiştirilmez).SORT_NUMERIC
- öğeler sayısal olarak karşılaştırılırSORT_STRING
- üyeler dizgesel olarak karşılaştırılırSORT_LOCALE_STRING
- öğeler dizgesel olarak geçerli yerele göre karşılaştırılır. Yinelenen değerler içermeyen bir dizi döner.
Sürüm: | Açıklama |
---|---|
7.2.0 | seçenekler SORT_STRING ise, evvelce dizi kopyalanıp benzersiz olmayan öğeler kaldırılırdı (sonradan dizi paketlenmeden), şimdi benzersiz öğeler eklenerek yeni bir dizi oluşturulmaktadır. Bu dizi, farklı sayısal indislerle oluşabilir. |
Örnek 1 - array_unique() örneği
<?php
$girdi = array("a" => "yeşil", "kırmızı", "b" => "yeşil", "mavi", "kırmızı");
$sonuç = array_unique($girdi);
print_r($sonuç);
?>
Yukarıdaki örneğin çıktısı:
Array ( [a] => yeşil [0] => kırmızı [1] => mavi )
Örnek 2 - array_unique() ve türler
<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
?>
Yukarıdaki örneğin çıktısı:
array(2) { [0] => int(4) [2] => string(1) "3" }
Bilginize: array_unique() çok boyutlu dizilerle çalışmak üzere tasarlanmamıştır.