2009-08-05 13 views

答えて

7

そう単純で、PHPコードの出力は上記になります

$a=array("Cat","Dog","Horse","Dog"); 
    print_r(array_count_values($a)); 

機能があります。

Array ([Cat] => 1 [Dog] => 2 [Horse] => 1) 
+0

omg。それらにも関数がありますか? – mpen

+0

そうですね=) –

1

を削除するには、この

 value freq 

     ---- ---- 

     foo  2 

     bar  1 

おかげのような配列になりたいですタブから重複するle array_unique()機能を使用してください。 array_unique()続い

+0

おかげでたくさん、私は知っていましたこの関数は発生をカウントしませんか? – ahmed

+0

私はそれらを手動で数える必要があると思います。 – RaYell

0

おそらくこのような何か(未テスト)

$freq = array(); 
foreach($arr as $val) { 
    $freq[$val] = 0; 
} 
foreach($arr as $val) { 
    $freq[$val]++; 
} 
+0

実際、アンドリューの解決策はより良いです。彼は1回のパスです...私の頭はそれほど速くは働きません: '( – mpen

+0

ハムのsol'n pwns。array_count_values – mpen

5

あなたはarray_count_values()をしたいに、。

$arr = array('foo','bar','foo'); 
print_r(array_count_values($arr)); 

$arr = array_unique($arr); 
print_r($arr); 

が与える:

Array ([foo] => 2 [bar] => 1) 
Array ([0] => foo [1] => bar) 
+0

なぜarray_uniqueが必要なのですか?array_count_valuesの後にアレイは既にユニークです –

+0

本当に私はそれを私の頭に入れました彼は一意の値とは別のカウントを使用する必要がありますが、正しいです、 'array_count_values()'は一意のキーリストを提供しますが、array_uniqueはあなたに一意の値リストを与えます。 'array_count_values()'。 – zombat

関連する問題