如何从PHP中的数组中删除重复值并计算每个元素的出现次数? 我有这个数组
我希望结果像这样
value freq
---- ----
foo 2
bar 1
由于
答案 0 :(得分:7)
这么简单,php有功能
$a=array("Cat","Dog","Horse","Dog");
print_r(array_count_values($a));
上面代码的输出将是:
Array ( [Cat] => 1 [Dog] => 2 [Horse] => 1 )
答案 1 :(得分:5)
您需要array_count_values(),然后是array_unique()。
$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 )
答案 2 :(得分:1)
要从表中删除重复项,请使用array_unique()函数。
答案 3 :(得分:0)
这样的事可能(未经测试)
$freq = array();
foreach($arr as $val) {
$freq[$val] = 0;
}
foreach($arr as $val) {
$freq[$val]++;
}