<?php
$array = [
'a' => 0,
'b' => 0,
'c' => 0,
'd' => 1,
'e' => 1,
'f' => 1
];
$array = [1,0,0,0,0,1,1,0,0,0,0,0,0];
$counters = [0, 0];
$nths = [];
foreach ($array as $v) {
$nths[] = $counters[$v]++;
}
array_multisort($nths, $array, SORT_DESC);
var_export($array);
- Output for 8.1.32, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- array (
0 => 1,
1 => 0,
2 => 1,
3 => 0,
4 => 1,
5 => 0,
6 => 0,
7 => 0,
8 => 0,
9 => 0,
10 => 0,
11 => 0,
12 => 0,
)
preferences:
67.2 ms | 406 KiB | 5 Q