我有一个包含重复值的数组。我想对数组进行排序,以便具有最多重复项的值首先出现在行中。这是我的数组的一个例子:
array(1, 2, 3, 2, 1, 2, 2);
我想对这个数组进行排序,以便根据重复的数量对自己进行排序:
array(2, 1, 3);
'2'具有最多重复,因此它首先排序,然后值将减少重复。有谁知道我怎么能做到这一点?
答案 0 :(得分:11)
$acv=array_count_values($array); // 1=>2, 2=>3,3=>1
arsort($acv); //save keys, 2=>3, 1=>2, 3=>1
$result=array_keys($acv); //get only keys 2,1,3
答案 1 :(得分:0)