Функция array_multisort() в PHP
Пример
Возвращает массив, отсортированный по возрастанию:
<?php $a=array("Dog","Cat","Horse","Bear","Zebra"); array_multisort($a);; print_r($a); ?>
Определение и использование
Функция array_multisort() возвращает отсортированный массив. Вы можете ввести один или несколько массивов. Функция сначала сортирует первый массив, затем другие массивы, если два или более значений одинаковы, она сортирует следующий массив.
Комментарий:Строковые имена ключей будут сохранены, но числовые имена ключей будут перерегистрированы, начиная с 0 и увеличиваясь на 1.
Комментарий:Вы можете установить параметры порядка и типа сортировки после каждого массива. Если они не установлены, каждый массив будет использовать значение по умолчанию.
Синтаксис
array_multisort(array1,порядок сортировки,тип сортировки,array2,array3...)
Параметры | Описание |
---|---|
array1 | Обязателен. Определение массива. |
порядок сортировки |
Опционально. Определение порядка сортировки. Возможные значения:
|
тип сортировки |
Опционально. Определение типа сортировки. Возможные значения:
|
array2 | Опционально. Определение массива. |
array3 | Опционально. Определение массива. |
Описание
Функция array_multisort() используется для сортировки нескольких массивов或多имассивов.
Массив в параметрах рассматривается как столбец таблицы и сортируется по строкам - это类似 функции ORDER BY в SQL. Первый массив является основным массивом для сортировки. Если строки (значения) в массиве сравниваются как равные, то сортировка продолжается по следующему вводимому массиву с соответствующими значениями, и так далее.
Первый параметр является массивом, следующие параметры могут быть массивом или одним из следующих признаков сортировки (признаки сортировки используются для изменения стандартного порядка排列):
- SORT_ASC - По умолчанию, сортировка по возрастанию. (A-Z)
- SORT_DESC - Сортировка по убыванию. (Z-A)
Затем можно определить тип сортировки:
- SORT_REGULAR - По умолчанию. Сортировка элементов по обычному порядку.
- SORT_NUMERIC - Сортировка элементов по числовому порядку.
- SORT_STRING - сортировка каждого элемента по алфавитному порядку.
Технические детали
Возвратное значение: | Возвращает TRUE при успешном выполнении, FALSE при неудаче. |
Версия PHP: | 4+ |
Журнал обновлений: |
Типы сортировки SORT_NATURAL и SORT_FLAG_CASE были добавлены в PHP 5.4. Тип сортировки SORT_LOCALE_STRING был добавлен в PHP 5.3. |
Более примеров
Пример 1
Возвращает массив, отсортированный по возрастанию:
<?php $a1=array("Dog","Cat"); $a2=array("Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Пример 2
Как сортировать при равных значениях:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Пример 3
Использование параметров сортировки:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,SORT_ASC,$a2,SORT_DESC);; print_r($a1); print_r($a2); ?>
Пример 4
Слияние двух массивов и сортировка по числовому порядку в порядке убывания:
<?php $a1=array(1,30,15,7,25); $a2=array(4,30,20,41,66); $num=array_merge($a1,$a2); array_multisort($num,SORT_DESC,SORT_NUMERIC);; print_r($num); ?>