Php bir Java Set eşdeğer var mı?
(Iki kez aynı öğe içeremez bir koleksiyon anlamına gelir)
SplObjectStorage yakın şeydir.
$storage = new SplObjectStorage;
$obj1 = new StdClass;
$storage->attach($obj1);
$storage->attach($obj1); // not attached
echo $storage->count(); // 1
$obj2 = new StdClass; // different instance
$obj3 = clone($obj2); // different instance
$storage->attach($obj2);
$storage->attach($obj3);
echo $storage->count(); // 3
Adından da anlaşılacağı gibi, bu sadece olsa objects ile çalışıyor. Skalar türleri ile bu kullanmak isterdim, bir yerine, yanı sıra Spl Data Structures olarak yeni Spl Types kullanın ve ArrayObject olurdu Dizi değiştirmeleri için.
Sen değerler standart PHP dizi kullanımı, ve array_unique fonksiyonu sayesinde iletebilirsiniz:
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
Çıkışlar:
array(2) {
[0] => int(4)
[2] => string(1) "3"
}