(PHP 4, PHP 5, PHP 7, PHP 8)
ksort — Сортирует массив по ключу в порядке возрастания
Функция сортирует массив array
по ключу в порядке возрастания.
Замечание:
Функция сохраняет первоначальный порядок элементов, если при сравнении значения двух элементов равны. До PHP 8.0.0 порядок элементов в отсортированном массиве оставался неопределённым.
Замечание:
Функция сбрасывает внутренний указатель массива на первый элемент.
array
Входной массив.
flags
Необязательный второй параметр flags
изменяет поведение сортировки и может принимать следующие значения:
Флаги типов сортировки:
SORT_REGULAR
— обычное сравнение элементов;
подробности описаны в разделе операторы сравнения
SORT_NUMERIC
— числовое сравнение элементов
SORT_STRING
— строковое сравнение элементов
SORT_LOCALE_STRING
— сравнение элементов как
строк на основе текущего языкового стандарта. Флаг использует языковой стандарт,
который можно изменить функцией setlocale()
SORT_NATURAL
— сравнение элементов как строки,
используя "естественный порядок", например natsort()
SORT_FLAG_CASE
— можно объединять
(побитовое ИЛИ) с
SORT_STRING
или
SORT_NATURAL
для сортировки строк без учёта регистра
Функция возвращает логическое значение true
.
Версия | Описание |
---|---|
8.2.0 |
Значение возврата теперь принадлежит типу true ; раньше значение принадлежало типу bool.
|
8.2.0 |
Теперь в режиме SORT_REGULAR функция сравнивает числовые строки
по стандартным правилам PHP 8.
|
Пример #1 Пример использования функции ksort()
<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
ksort($fruits);
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
?>
Результат выполнения приведённого примера:
a = orange b = banana c = apple d = lemon
Пример #2 Пример сортировки функцией ksort() массива с целочисленными (int) ключами
<?php
$a = [0 => 'First', 2 => 'Last', 1 => 'Middle'];
var_dump($a);
ksort($a);
var_dump($a);
?>
Результат выполнения приведённого примера:
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" }