PHP array_multisort()Функции
Полный справочник по массивам PHP
Примеры
Возвращает массив, отсортированный по возрастанию:
$a=array("Dog","Cat","Horse","Bear","Zebra");
array_multisort($a);
print_r($a);
?>
Запустить пример »
Определение и использование
Функция array_multisort() возвращает отсортированный массив. Можно передать один или несколько массивов. Функция сначала сортирует первый массив, затем остальные массивы. Если два или несколько значений совпадают, она сортирует следующий массив.
Примечание:Строковые ключи будут сохранены, но числовые ключи будут переиндексированы, начиная с 0 и увеличиваясь на 1.
Примечание:Можно задать параметры порядка сортировки и типа сортировки после каждого массива. Если они не заданы, каждый параметр массива будет использовать значение по умолчанию.
Синтаксис
| Параметр | Описание |
|---|---|
| array1 | Обязательный. Задаёт массив. |
| порядок сортировки | Необязательный. Задает порядок сортировки. Возможные значения:
|
| тип сортировки | Необязательный. Задает тип сортировки. Возможные значения:
|
| array2 | Необязательный. Задаёт массив. |
| array3 | Необязательный. Задаёт массив. |
Технические детали
| Возвращаемое значение: | Возвращает TRUE при успехе или FALSE при неудаче. |
|---|---|
| Версия PHP: | 4+ |
| Список изменений: | Типы сортировки SORT_NATURAL и SORT_FLAG_CASE были добавлены в PHP 5.4. Тип сортировки SORT_LOCALE_STRING был добавлен в PHP 5.3. |
Другие примеры
Пример 1
Возвращает массив, отсортированный по возрастанию:
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Запустить пример »
Пример 2
Как сортировать, когда два значения одинаковы:
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Запустить пример »
Пример 3
Использование параметров сортировки:
$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
Объединить два массива и отсортировать по убыванию числовых значений:
$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);
?>
Запустить пример »
Полный справочник по массивам PHP Другие расширения