i want the same value has the same index for example
1 2 2 3 5
sonra sıralama:
array(
0=>1
1=>2
1=>2
3=>3
4=>5);
ama biz php dizi yinelenen endeksi ayarlanamaz.
Example
<?php
$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val) {
echo "fruits[" . $key . "] = " . $val . "\n";
}
?>
Duplicates
Yukarıdaki örnek çiftleri sadece kendi dizinleri böylece dizi olacak:
5 4 5 1 3 1 2
Bu gibi görünecek
1 1 2 3 4 5 5
Bu ne istediğinizi belki her satırda bir hashtable ya da sadece bir bağlantılı liste istiyoruz, sadece basit bir dizi daha kümesi başka bir türüdür, aradığınızı olmayabilir.
If you are okay with it, you can remove the duplicates by using array_unique
$newArray=array_unique($arr);
Hangi bu gibi bakarak bir dizi olan yol açacak
1 2 3 4 5
Haklısın, bir dizide aynı dizin yinelenen değerler olamaz - Dizideki her dizin tam olarak bir değeri vardır.
Soru başlığı olarak, sort
a> kullanmak, PHP bir dizi sıralamak için.
Bu sormak için çalışıyoruz ne cevap vermezse, siz (soru vücut soru başlığı özellikle ilgili görünmüyor) bu biraz daha net yapmak için soruyu düzenlemek isteyebilirsiniz.
Post OP's edit:
Aynı anahtar at cannot mağaza birden değerleri, çıkış dizisi (array(0=>1, 1=>2, 1=>2, 3=>3, 4=>5);
) gerçekten mantıklı (anahtar 1
değerine haritayı yapar {yapmaz [(3)]}) sıralanmış diziye. Eğer sayı olaylar mağaza sayıları çalışıyorsun?
örneğin giriş sunulmuştur:
1, 2, 2, 3, 5
çıktı almak:
array(1=>1, 2=>2, 3=>1, 5=>1); // there is 1 "1", there are 2 "2"s etc.
Aradığınız array_unique:
array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
Bir giriş dizi alır ve yinelenen değerlere olmadan yeni bir dizi döndürür.