<?php
$array = [
['array-5', 0],
['array-7', -.5],
['array-4', 0],
['array-1',-1],
['array-3', 2],
['array-6', .5],
['array-2', 3],
['array-8', -2]
];
$notNegs = [];
$absVals = [];
foreach ($array as [1 => $v]) {
$abs = abs($v);
$absVals[] = $abs;
$notNegs[] = $v === $abs;
}
array_multisort($notNegs, $absVals, SORT_DESC, $array);
var_export($array);
preferences:
24.3 ms | 406 KiB | 5 Q