PHP uksort() Function
Quick summary: The PHP uksort() function sorts an array by keys using a custom comparison function.
PHP uksort() Syntax
uksort(array &$array, callable $callback): bool
PHP
PHP uksort() Basic examples
$arr = ['b'=>1,'a'=>2];
uksort($arr, fn($a,$b)=>$a<=>$b);
var_dump($arr);
PHP
Output:
array(2) { ["a"]=> int(2) ["b"]=> int(1) }
Sorts array keys using a custom comparator.
PHP uksort() Real-world usage
$routes = ['POST'=>1,'GET'=>2];
uksort($routes, 'strcmp');
var_dump($routes);
PHP
Output:
array(2) { ["GET"]=> int(2) ["POST"]=> int(1) }
Sorts associative keys alphabetically.
PHP uksort() Edge cases
PHP uksort() Common mistakes
Expecting value sorting
uksort sorts by keys, not values.
Incorrect
uksort(['a'=>2,'b'=>1], fn($a,$b)=>$a<=>$b);
Correct
uasort(['a'=>2,'b'=>1], fn($a,$b)=>$a<=>$b);
Use uasort to sort by values.
PHP uksort() Frequently Asked Questions
What does uksort() do?
uksort() sorts an array by keys using a callback.
Does it modify array?
Yes.
Preserves values?
Yes.
Comparison function works on?
Keys.
Use case?
Custom key sorting.
Difference from ksort()?
Uses custom callback.
Supports associative arrays?
Yes.
Performance?
Good.
Stable?
No.
Descending sort?
Yes via callback.
Spaceship operator?
Yes.
Alternative?
ksort().