Справочник функций PHP /
Функции по алфавиту
A B C D E F G H I J K L M N O P Q R S T U V W

array_multisort

bool array_multisort ( array &$arr [, mixed $arg = SORT_ASC [, mixed $arg = SORT_REGULAR [, mixed $... ]]] ) array_multisort сортирует многомерный массив или несколько массивов. Аргументы передаются достаточно необычным образом — первый аргумент обязательно массив, а последующие либо массивы, либо флаги, определяющие способ сортировки. Возможные флаги сортировки могут быть двух типов: Порядок сортировки:
SORT_ASCв порядке возрастания
SORT_DESCв порядке убывания
Тип сравнения элементов:
SORT_REGULARсравнивать обычным образом
SORT_NUMERICсравнивать как числа
SORT_STRINGсравнивать как строки
Стоит помнить, что можно использовать максимум два флага — по одному каждого типа. Примеры использования <?php
// Простая сортировка двух массивов
$arr=array('banana', 'apple');
$arr2=array('date', 'cherry');

array_multisort($arr, $arr2);

print_r($arr);
print_r($arr2);
/*
Array ( [0] => apple [1] => banana ) Array ( [0] => cherry [1] => date )
*/
?>
<?php
// Сортировка многомерного массива, используя флаги сортировки
$arr=array(array('banana', 'apple'), array('date', 'cherry'));

array_multisort($arr, SORT_DESC, SORT_STRING);

print_r($arr);
/*
Array ( [0] => Array ( [0] => date [1] => cherry ) [1] => Array ( [0] => banana [1] => apple ) )
*/
?>
<?php
// Сортировка двух массивов, используя флаги
$arr=array('banana', 'apple');
$arr2=array('date', 'cherry');

array_multisort($arr, SORT_DESC, SORT_STRING, $arr2, SORT_DESC, SORT_STRING);

print_r($arr);
print_r($arr2);
/*
Array ( [0] => banana [1] => apple ) Array ( [0] => date [1] => cherry )
*/
?>