數組我有原來的數組是這樣的:訂購的特定值
$arr=array(10,8,13,8,5,10,10,12);
,並希望使最終排序變爲:
:$arr=array(10,10,10,8,8,13,12,5);
要通過我這種方式得到最後的結果
$arr=array(10,8,13,8,5,10,10,12);
// Remove array that contain array(1)
$arr_diff=array_diff(array_count_values($arr), array(1));
// Remove array that contain keys of $arr_diff
$arr=array_diff($arr, array_keys($arr_diff));
// Sort
rsort($arr);
ksort($arr_diff);
// unshift
foreach ($arr_diff as $k=>$v)
{
while ($v > 0)
{
array_unshift($arr,$k);
$v--;
}
}
// print_r($arr);
我的問題是有另一種更簡單的方法嗎?
謝謝。
該訂單的邏輯是什麼?發生次數? – deceze
看起來像dups - >沒有dups然後高 - > – elclanrs