Впорядкування масивів

PHP має декілька функцій, що впорядковують масиви, і цей документ існує, щоб допомогти це все розібрати.

Основні відмінності:

  • Деякі функції впорядковують ключі масивів, тоді як інші — значення: $array['ключ'] = 'значення';
  • Деякі зберігають зв'язок між ключами та значеннями, а інші ні, наприклад, замінюють ключі на числові (0,1,2 ...)
  • Порядок: алфавітний, за зростаннями (від меншого до більшого), за спаданням (від більшого до меншого), природній, випадковий або визначений користувачем
  • Примітка: Усі ці функції впливають конкретно на заданий масив, а не повертають впорядкований новий
  • Якщо будь-яка з цих функцій оцінює два члени як рівні, тоді вони зберігають свій початковий порядок. До PHP 8.0.0, їхній порядок був невизначеним (сортування не було стабільним)

Атрибути функцій впорядкування
Назва функції Що впорядковує Підтримка прив'язки ключів Порядок Пов'язані функції
array_multisort() значення типу string — так, int — ні перший масив або опції впорядкування array_walk()
asort() значення так за зростанням arsort()
arsort() значення так за спаданням asort()
krsort() ключ так за спаданням ksort()
ksort() ключ так за зростання krsort()
natcasesort() значення так природній, без урахування регістру natsort()
natsort() значення так природній natcasesort()
rsort() значення ні за спаданням sort()
shuffle() значення ні випадково array_rand()
sort() значення ні за зростанням rsort()
uasort() значення так визначає користувач uksort()
uksort() ключ так визначає користувач uasort()
usort() значення ні визначає користувач uasort()