Синтаксис:
bool ksort (массив и $ массив [, int $ sort_flags = SORT_REGULAR])
Эта функция может принимать два аргумента. Первый аргумент является обязательным, он принимает массив, который будет отсортирован по ключу. Второй аргумент является необязательным, и его можно использовать для изменения поведения сортировки. В качестве необязательного аргумента можно использовать любое из следующих значений.
SORT_REGULAR или 0: это значение по умолчанию, и элементы сортируются нормально.
SORT_NUMERIC или 1: используется для сортировки массива на основе цифровых ключей.
SORT_STRING или 2: используется для сортировки массива на основе строковых ключей.
SORT_LOCALE_STRING или 3: используется для сортировки массива на основе строковых ключей в текущей локали.
SORT_NATURAL или 4: используется для сортировки массива на основе строковых ключей в естественном порядке.
SORT_FLAG_CASE или 5: используется для сортировки массива на основе строковых ключей с учетом регистра.
Пример 1: Сортировка массива на основе строковых ключей (по умолчанию)
В следующем примере показано использование ksort () без необязательного аргумента.
Сначала создайте файл PHP со следующим сценарием. В скрипте объявлен одномерный ассоциативный массив из четырех элементов. Здесь функция ksort () используется для сортировки массива по значениям ключей в порядке возрастания. Если в функции ksort () не используется необязательный аргумент, массив будет отсортирован обычным образом. Далее для каждого цикл используется для печати отсортированного массива с ключами и значениями.
// Объявить ассоциативный массив
$ клиенты знак равно множество ('c4089'=>'Мехраб Хосейн', 'c1289'=>'Мунир Чоудхури', 'c2390'=>'Мина Рахман', 'c1906'=>'Роксана Камаль');
// Применяем по умолчанию ksort ()
ksort ($ клиенты);
выбросил '
Значения отсортированного массива:
';// Выводим значения массива после сортировки
для каждого ($ клиенты в качестве $ ключ => $ значение) {
выбросил '$ ключзнак равно$ значение
';
}
?>
Выход:
Следующий вывод появится после запуска сценария с сервера. Выходные данные показывают, что ключевые значения массива отсортированы.
Пример 2: Сортировка массива по числовым клавишам
В следующем примере показан способ сортировки одномерного числового массива с помощью функции ksort ().
Сначала создайте файл PHP со следующим сценарием. Здесь объявлен ассоциативный массив из четырех элементов, где ключевые значения массива являются числовыми. 1 используется в качестве необязательного аргумента ksort () в сценарии, который используется для сортировки массива на основе значений числовых ключей. Далее для каждого цикл используется для печати отсортированного массива.
// Объявить ассоциативный массив
$ items знак равно множество (89564=>'Монитор', 98765=>'Мышь', 34234=>'Принтер', 18979=>'Сканер');
// Применяем ksort () с необязательным значением аргумента 1
ksort ($ items, 1);
выбросил '
Значения отсортированного массива:
';// Выводим значения массива после сортировки
для каждого ($ items в качестве $ ключ => $ значение) {
выбросил '$ ключзнак равно$ значение
';
}
?>
Выход:
Следующий вывод появится после запуска сценария с сервера. В выходных данных показаны ключи и значения массива после сортировки массива по числовым значениям ключей.
Пример 3: Сортировка ассоциативного массива по естественному порядку
В следующем примере показан способ сортировки массива на основе ключа, по которому ключ будет отсортирован в естественном порядке. Это означает, что если ключ массива начинается с символа и заканчивается числом, то сортировка будет выполняться естественным образом.
Сначала создайте файл PHP со следующим сценарием. Здесь определяется ассоциативный массив из четырех элементов, а пара 'ключ-значение' содержит как символы, так и числа. 4 используется во втором аргументе ksort () для естественной сортировки. Далее для каждого цикл используется для печати отсортированного массива.
// Объявить ассоциативный массив
$ курсы знак равно множество ('CSE408'=>'Мультимедиа', 'MAT201'=>'Математика I', 'CSE204'=>'Алгоритмы', 'PHY101'=>'Физика I');
// Применяем ksort () с необязательным значением аргумента 4
ksort ($ курсы, 4);
выбросил '
Значения отсортированного массива:
';// Выводим значения массива после сортировки
для каждого ($ курсы в качестве $ ключ => $ значение) {
выбросил '$ ключзнак равно$ значение
';
}
?>
Выход:
Следующий вывод появится после запуска сценария с сервера. Выходные данные показывают ключи и значения массива после естественной сортировки ключей массива.
Пример 4. Сортировка ассоциативного массива с учетом регистра
В следующем примере показан способ сортировки ассоциативного массива на основе ключей, где значения ключей будут отсортированы с учетом регистра.
Сначала создайте файл PHP со следующим сценарием. В скрипте объявлен ассоциативный массив из пяти элементов. Ключевые значения массива содержат как строчные, так и заглавные буквы. Здесь 5 используется как значение второго аргумента ksort () для сортировки с учетом регистра. Следующий, foreach цикл используется для печати отсортированного массива.
// Объявить ассоциативный массив
$ продукты знак равно множество ('кекс'=>'20 долларов', 'Кокс'=>'2 доллара', 'бургер'=>'5 долларов США', 'Пицца'=>'10 долларов США', 'пончик'=>'2 доллара');
// Применяем ksort () с необязательным значением аргумента 5
ksort ($ продукты, 5);
выбросил '
Значения отсортированного массива:
';// Выводим значения массива после сортировки
для каждого ($ продукты в качестве $ ключ => $ значение) {
выбросил '$ ключзнак равно$ значение
';
}
?>
Выход:
Следующий вывод появится после запуска сценария с сервера. Выходные данные показывают ключи и значения массива после сортировки ключей массива с учетом регистра. Ключевые значения массива: кекс , Кокс , бургер , Пицца , а пончик . Заглавная буква меньше строчной буквы на основе кода ASCII. После сортировки с учетом регистра ключевые значения Кокс , Пицца , бургер , кекс , а пончик .
Заключение
Различные способы сортировки массива на основе ключей с помощью функции ksort () были объяснены в этом руководстве с использованием нескольких примеров. Значения ключей сортируются на основе значения второго аргумента этой функции. Надеюсь, читатели смогут отсортировать массив по ключам с помощью PHP после прочтения этого руководства.