PHP 求一个数组中出现最多的值

答案

  1. function getMaxCountValue($array)
  2. {
  3. $array2 = array_count_values($array); // 统计数组中所有值出现的次数
  4. arsort($array2); // 按照键值对关联数组进行降序排序
  5. $first = reset($array2);
  6. $firstKey = key($array2);
  7. return [$firstKey, $first];
  8. }

测试代码:

  1. $array = array(1, 1, 1, 54, 3, 4, 3, 4, 3, 14, 3, 4, 3, 7, 8, 9, 12, 45, 66, 5, 7, 8, 9, 2, 45, 3);
  2. list($key, $count) = getMaxCountValue($array);
  3. echo "数组中数字{$key}重复次数最多,为:{$count}次";

输出结果:

数组中数字3重复次数最多,为:6次