PHP获取数组中重复最多的元素的实现方法

复制代码 代码如下:

<?php 
/** 
 *  
 * Created on 2014-4-1 
 * @param   array $array 
 * @param   int [optional] $length 
 * @return  array 
 */ 
function mostRepeatedValues($array,$length=0){ 
    if(emptyempty($array) or !is_array($array)){ 
        return false; 
    } 
    //1. 计算数组的重复值 
    $array = array_count_values($array); 
    //2. 根据重复值 倒排序 
    arsort($array); 
    if($length>0){ 
        //3. 返回前 $length 重复值 
        $array = array_slice($array, 0, $length, true); 
    } 
    return $array; 

$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); 
$counts=mostRepeatedValues($array,5); 
print_r($counts); 
/*输出结果为:
Array 

    [3] => 5 
    [4] => 3 
    [1] => 3 
    [9] => 2 
    [45] => 2 

*/ 
?>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/af00c6054adb716ddb90bc6ef35fc7df.html