PHP统计数值数组中出现频率最多的10个数字的方法

这篇文章主要介绍了PHP统计数值数组中出现频率最多的10个数字的方法,涉及php中array_count_values与arsort等方法的相关使用技巧,非常具有实用价值,需要的朋友可以参考下。

本文实例讲述了PHP统计数值数组中出现频率最多的10个数字的方法。分享给大家供大家参考。具体分析如下:

该问题属于TOPK范畴,统计单词出现频率,做报表,数据统计的时会常用!

php代码如下:

  1. //随机生成数值数组
  2. for($i=0;$i<1000;$i++){
  3. $ary[]=rand(1,1000);
  4. }
  5. //统计数组中所有的值出现的次数
  6. $ary=array_count_values($ary);
  7. arsort($ary);//倒序排序
  8. $i=1;
  9. foreach($ary as $key=>$value){
  10. if($i<=10){
  11. printf("数字:%d 共出现 %d 次<br/>",$key,$value);
  12. }else{
  13. break;
  14. }
  15. $i++;
  16. }
  17. unset($ary);

结果如下:

数字:255 共出现 6 次

数字:443 共出现 5 次

数字:906 共出现 5 次

数字:623 共出现 5 次

数字:586 共出现 4 次

数字:660 共出现 4 次

数字:873 共出现 4 次

数字:208 共出现 4 次

数字:247 共出现 4 次

数字:240 共出现 4 次