<?php
function uasort_key(&$arr, $func) {
return uksort($arr, function($a,$b) use(&$arr,$func) {
return $func($arr[$a], $arr[$b], $a, $b);
});
}
function sort_me($a, $b, $ka = 0, $kb = 0) {
return ($a < $b ? -1 : ($a > $b ? 1 :
($ka < $kb ? -1 : ($ka > $kb ? 1 : 0))
));
}
$test_array = array(4,6,2,1,7,5,1,34,1,0,4);
$test_array_uasort = $test_array;
$test_array_uasort_key = $test_array;
uasort($test_array_uasort, 'sort_me');
uasort_key($test_array_uasort_key, 'sort_me');
echo 'Unsorted: ';
print_r($test_array);
echo 'uasort: ';
print_r($test_array_uasort);
echo 'uasort_key: ';
print_r($test_array_uasort_key);
preferences:
69.49 ms | 402 KiB | 5 Q