繁体   English   中英

计算数组中每个值的出现次数

[英]Count the occurrences of each value in an array

如何从 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_unique()函数。

可能是这样的(未经测试)

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM