【发布时间】:2009-08-05 05:54:36
【问题描述】:
如何从 PHP 中的数组中删除重复值并计算每个元素的出现次数? 我有这个数组
- 富
- 酒吧
- 富
我希望结果是这样的数组
value freq
---- ----
foo 2
bar 1
谢谢
【问题讨论】:
如何从 PHP 中的数组中删除重复值并计算每个元素的出现次数? 我有这个数组
我希望结果是这样的数组
value freq
---- ----
foo 2
bar 1
谢谢
【问题讨论】:
这么简单,php有功能
$a=array("Cat","Dog","Horse","Dog");
print_r(array_count_values($a));
上面代码的输出将是:
Array ( [Cat] => 1 [Dog] => 2 [Horse] => 1 )
【讨论】:
你想要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 )
【讨论】:
array_count_values() 确实为您提供了唯一的键列表,而 array_unique 为您提供了唯一的值列表。对 ahmeds 而言,他可能只需要 array_count_values()。
要从表中删除重复项,请使用array_unique() 函数。
【讨论】:
可能是这样的(未经测试)
$freq = array();
foreach($arr as $val) {
$freq[$val] = 0;
}
foreach($arr as $val) {
$freq[$val]++;
}
【讨论】: