(PHP 4, PHP 5, PHP 7, PHP 8)
ksort — Sort an array by key in ascending order
&$array
, int $flags
= SORT_REGULAR
): true
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 section
SORT_NUMERIC
- compare items numerically
SORT_STRING
- compare items as strings
SORT_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
.
Version | Description |
---|---|
8.2.0 |
The return type is true now; previously, it was bool.
|
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" }