örneğin;
$keys[1]="asdqwe";
$keys[2]="Asdqwe";
$keys[3]="deneme";
$keys[4]="DENEME";
$keys[5]="asdqwe";
$keys[6]="farklı";
Böyle bir dizide asdqwe değeri 3 kere, deneme değeri 2 kere, farklı değeri 1 kere geçmiş olduğunu anlayarak; [ 1)aswdqwe , 2)deneme , 3)farklı ] şeklinde nasıl sıralatabilirim?
Dizide aynı değeri alan elemanları bulma
4
●5.775
- 26-10-2008, 00:49:49iç içe bayağı for döngüsü gerekecek
mesela 1. elemanı alırsın son elemana kadar taratır eşitini bulursan sayıyı bir arttırırsın
bunu tüm elemanlar için yaparsın
ama mesela 5 ile 1 aynı
bunun için de eğer kendisinden önce bu değer geçmişse break; falan yaparsın - 26-10-2008, 11:46:30array_count_values kullandığımda
Array
(
[asdqwe] => 3
[farklı] => 1
[deneme] => 2
)
şekline geldi. Ama bunları nasıl sayıya göre sıralatacağım?
edit:
Şu şekildeymiş;
$keys2=array_count_values($keys);
arsort($keys2);
foreach($keys2 as $x => $y) { echo("$x - $y<br>");}