(PHP 4, PHP 5, PHP 7, PHP 8)
ksort — Sort an array by key in ascending order
Sorts array
in place by keys in ascending order.
Note:
If two members compare as equal, they retain their original order. Prior to PHP 8.0.0, their relative order in the sorted array was undefined.
Note:
Resets array's internal pointer to the first element.
array
The input array.
flags
The optional second parameter flags
may be used to modify the sorting behavior using these values:
Sorting type flags:
SORT_REGULAR
- compare items normally; the details are described in the comparison operators sectionSORT_NUMERIC
- compare items numericallySORT_STRING
- compare items as stringsSORT_LOCALE_STRING
- compare items as strings, based on the current locale. It uses the locale, which can be changed using setlocale()SORT_NATURAL
- compare items as strings using "natural ordering" like natsort()SORT_FLAG_CASE
- can be combined (bitwise OR) with SORT_STRING
or SORT_NATURAL
to sort strings case-insensitively Always returns true
.
Example #1 ksort() example
<?php
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");
ksort($fruits);
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
?>
The above example will output:
a = orange b = banana c = apple d = lemon
Example #2 ksort() with int keys
<?php
$a = [0 => 'First', 2 => 'Last', 1 => 'Middle'];
var_dump($a);
ksort($a);
var_dump($a);
?>
The above example will output:
array(3) { [0]=> string(5) "First" [2]=> string(4) "Last" [1]=> string(6) "Middle" } array(3) { [0]=> string(5) "First" [1]=> string(6) "Middle" [2]=> string(4) "Last" }