Рецепт №34. Из книги «128 рецептов php»
Перейти к оглавлению
Для сортировки массивов как одномерных и многомерных, так и ассоциативных в php существует достаточно много функций. О самых часто используемых функциях по порядку:
Sort – позволяет сортировать одномерный массив по возрастанию элементов. Пример:
// исходный массив $array = array(5, 1, 7, 2, 6, 3, 8, 4); // сортировка по возрастанию sort($array); // вывод результата print_r($array);
Rsort – сортирует одномерный массив по убыванию элементов. Пример:
// исходный массив $array = array(5, 1, 7, 2, 6, 3, 8, 4); // сортировка по убыванию rsort($array); // вывод результата print_r($array);
Shuffle – перемешивает элементы одномерного массива в случайном порядке. Пример:
// исходный массив $array = array(5, 1, 7, 2, 6, 3, 8, 4); // перемешивает элементы в случайном порядке shuffle($array); // вывод результата print_r($array);
Array_reverse – перемешивает элементы любого массива в обратном порядке. Если массив многомерный или ассоциативный, то значение индексов или ключей перемешиваются вместе со значениями. Пример:
// исходный массив
$array = array('a'=>5, 'b'=>1, 7, 'c'=>3, 4);
// сортировка в обратном порядке
$array = array_reverse($array);
// вывод результата
print_r($array);
Asort – сортирует любой массив по возрастанию значений. Если массив многомерный или ассоциативный, то индексы или ключи перемешиваются вместе со значениями. Пример:
// исходный массив
$array = array('b' => 1, 'a' => 3, 2, 'c' => 4);
// сортировка ассоциативного массива по возрастанию
// перемешивает и значения вместе с ключами(индексами)
asort($array);
// вывод результата
print_r($array);
Arsort – сортирует любой массив по убыванию значений. Если массив многомерный или ассоциативный, то индексы или ключи перемешиваются вместе со значениями. Пример:
// исходный массив
$array = array('b' => 1, 'a' => 3, 2, 'c' => 4);
// сортировка ассоциативного массива по убыванию
// перемешивает и значения вместе с ключами(индексами)
arsort($array);
// вывод результата
print_r($array);
Ksort – сортирует массив по возрастанию ключей. Значения перемешиваются вместе с ключами. Пример:
$array = array('b' => 1, 'a' => 3, 'c' => 2);
// сортировка ассоциативного массива
// по возрастанию ключей(индексов)
// перемешивает и ключи(индексы) и значения
ksort($array);
// вывод результата
print_r($array);
