PHP Array Sorting
| Function | Sorts By | Maintains Keys |
|---|---|---|
sort() | Values asc | No |
rsort() | Values desc | No |
asort() | Values asc | Yes |
arsort() | Values desc | Yes |
ksort() | Keys asc | Yes |
krsort() | Keys desc | Yes |
usort() | Custom function | No |
| Function | Sorts By | Maintains Keys |
|---|---|---|
sort() | Values asc | No |
rsort() | Values desc | No |
asort() | Values asc | Yes |
arsort() | Values desc | Yes |
ksort() | Keys asc | Yes |
krsort() | Keys desc | Yes |
usort() | Custom function | No |
<?php
$names = ["Charlie", "Alice", "Bob"];
sort($names);
print_r($names); // ["Alice", "Bob", "Charlie"]
// Custom sort: by age
$users = [
["name"=>"Bob", "age"=>30],
["name"=>"Alice", "age"=>25],
["name"=>"Carol", "age"=>28],
];
usort($users, fn($a,$b) => $a["age"] <=> $b["age"]);
foreach ($users as $u) echo $u["name"] . ": " . $u["age"] . "
";
?>