In PHP, the uasort() function sorts an array by values using a user-defined comparison function, while maintaining the original keys.
<?php function my_sort($a, $b) { if ($a == $b) return 0; return ($a < $b) ? –1 : 1; } $arr = array(“a”=>4, “b”=>2, “c”=>8, “d”=>6); uasort($arr, “my_sort”); foreach($arr as $key => $value) { echo “[“ . $key . “] => “ . $value; echo “<br>”; } ?> |
The uasort()
function sorts an array by its values using a user-defined comparison function, while preserving the index associations.
Tip: Use the uksort()
function to sort an array by its keys using a user-defined comparison function.
Tip: Use the usort()
function to sort an array by its values using a user-defined comparison function without preserving index associations.
uasort(array, callback) |
Parameter |
Description |
array |
Required. Specifies the array to be sorted. |
callback |
Required. A comparison function that must return an integer less than, equal to, or greater than 0 if the first argument is less than, equal to, or greater than the second argument. |
Return Value: |
Always returns TRUE. |
PHP Version: |
4+ |
PHP Changelog: |
PHP 8.2.0: Now returns TRUE (previously it returned a boolean). PHP 8.0.0: If the callback expects a parameter to be passed by reference, it will now trigger an E_WARNING. |