PHP uasort() Function
Quick summary: The PHP uasort() function sorts an array by values while preserving keys.
PHP uasort() Syntax
uasort(array &$array, callable $callback): bool
PHP
PHP uasort() Basic examples
$arr = ['a'=>3,'b'=>1];
uasort($arr, fn($a,$b)=>$a<=>$b);
var_dump($arr);
PHP
Output:
array(2) { ["b"]=> int(1) ["a"]=> int(3) }
Sorts values without reindexing keys.
PHP uasort() Real-world usage
PHP uasort() Edge cases
$arr = ['a'=>1];
uasort($arr, fn()=>0);
var_dump($arr);
PHP
Output:
array(1) { ["a"]=> int(1) }
Single-element arrays remain unchanged.
PHP uasort() Common mistakes
Confusing uasort with usort
usort reindexes keys.
Incorrect
usort(['a'=>1,'b'=>2], fn($a,$b)=>0);
Correct
uasort(['a'=>1,'b'=>2], fn($a,$b)=>0);
Use uasort when keys matter.
PHP uasort() Frequently Asked Questions
What does uasort() do?
uasort() sorts an array using a callback while preserving keys.
Does uasort() modify the array?
Yes.
Does it preserve keys?
Yes.
Comparison function return?
Integer comparison result.
Use case?
Sorting associative arrays.
Difference from usort()?
uasort preserves keys.
Supports objects?
Yes.
Performance?
Similar to usort.
Stable?
No.
Alternative?
asort().
Descending sort?
Yes via callback.
Spaceship operator support?
Yes.