Doğru Cevap
-
$sehirler=array('bursa'=>0, 'istanbul'=>0,...); $secilenler = array_count_values(explode(",", implode(",", array($sehir1, $sehir2)))) $secilmeyenler = array_diff_key($sehirler, $secilenler); foreach (array_merge($secilmeyenler, $secilenler) as $sehiradi=>$adet) {echo "$sehiradi ($adet kez seçildi)\n<br/>";}
-
necmettin
Yazdıktan sonra farkettim, $secilmeyenler'e aslında hiç gerek yok burada, 4.satırda ..(secilmeyenler, secilenler) yerine (sehirler, secilenler) yeterli aslında.12 yıl önce yazılmış
-
Cevaplar
-
Sanırım başta belirtmeyi unutmuşum.
Veritabanında her şehrin kendine has bir anahtarı yok.
Yorum alanı düşünün. Oraya ankara,istanbul,izmir,antalya,adana,denizli,bursa,konya,trabzon diye aralarına boşluk olmadan virgül ile ayırarak verileri tek seferde giriyoruz.
Ya da şöyle diyeyim : Gezip gördüğünüz şehirleri aralarında boşluk olmadan, virgül ile ayırarak giriniz.
Bende yorum kutusuna şunu yazıyorum. ankara,istanbul,izmir,antalya,adana,denizli,bursa,konya,trabzon
Kod:
echo $sehir1;
dediğim zaman ekrana şu şekilde basıyor demiştim.
ankara,istanbul,izmir,antalya,adana,denizli,bursa,konya,trabzon
Üyeninde gezip gördüğü şehir sayısını explode ile parçalatıp buluyorum.
Ancak aynı zamanda hangi şehir kaç defa görülmüş gibi bir sonuç almam gerek.
Aşağıdaki gibi bir kod olunca böyle birşeyle yapılabilir diye ümit etmiştim.
Kod:
$dizi = array('a', 'b', 'a', 'a', 'c', 'a', 'd', 'a', 'c', 'd'); $tekrar = array_count_values($dizi); echo $tekrar['a']; // 5 kez aynı değer yer alıyor.
Umarım şimdi detaylı bir açıklama olmuştur.