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