Упорядочивание и сортировка

  • array_flip() - Меняет местами ключи с их значениями в массиве.
  • array_reverse($array, $preserve_keys) - Возвращает массив с элементами в обратном порядке. Если $preserve_keys установлено в TRUE, то ключи будут сохранены. Нечисловые ключи не подвержены этой опции и всегда сохраняются.
  • bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] ) - Сортирует массив. После завершения работы функции элементы массива будут расположены в порядке возрастания. Для сортировки нескольких массивов или многомерных массивов следует использовать array_multisort(). Замечание: Эта функция присваивает новые ключи элементам массива. Она удалит все существующие ключи, а не просто переупорядочит их.
  • rsort() - Сортирует массив в обратном порядке (ключи будут утеряны).
  • ksort() - Сортирует по ключам (связи ключ-значение сохраняются).
  • asort() - тоже что и sort(), связи ключ-значение сохраняются.
  • arsort() - тоже что и rsort(), связи ключ-значение сохраняются.
  • usort($array, "callback")| ursort() | uksort() - сортировка с применением callback функции. Ключи не сохраняются только для usort().
  • bool natsort ( array &$array ) | natcasesort () - сортировка по алгоритму "natural order". Ключи сохраняются.
  • array array_rand (array $array, int number_of_elements) - Выбирает одно или несколько случайных значений из массива. Возвращает ключ (или ключи) данных случайных элементов.
  • bool shuffle ( array &$array ) - Перемешивает элементы массива в случайном порядке. Замечание: Эта функция присваивает новые ключи элементам массива. Она удалит все существующие ключи, а не просто переупорядочит их.

usort($array, $callable)

Эта функция сортирует элементы массива, используя для сравнения значений callback-функцию, предоставленную пользователем. Используйте эту функцию, если вам нужно отсортировать массив по какому-нибудь необычному признаку.

Замечание: Если два элемента исходного массива равны, их порядок относительно друг друга в отсортированном массиве не определён.

Замечание: Эта функция присваивает новые ключи элементам массива. Она удалит все существующие ключи, а не просто переупорядочит их.

Функция сравнения должна возвращать целое, которое меньше, равно или больше нуля, если первый аргумент является соответственно меньшим, равным или большим чем второй.

Замечание: возвращаемые нецелочисленные (non-integer) значения из функции сравнения, такие как float, будут приводиться к типу integer. Поэтому такие значения, как 0.99 и 0.1, будут приводиться к целому числу 0, что указывает на равенство сравниваемых значений.