Сортировать элементы в массиве

Сортировка элементов массива происходит через функции natsort() и sort().

$images = ['img-8', 'img-5', 'img-7', 'img-11'];

natsort($images);
// Array([1] => img-5, [2] => img-7, [0] => img-8, [3] => img-11)

sort($images);
// Array([0] => img-11, [1] => img-5, [2] => img-7, [3] => img-8)

Сортировка чисел:

# сортировка чисел
$arr = [1,5,4,7,43,21,5];
sort($arr, SORT_NUMERIC); // 1-ый способ
natsort($arr);            // 2-ой способ

Функция sort() заново проставляет индексы, даже для ассоциативных массивов. Чтобы сортировать элементы массива вместе с индексами, надо использовать функцию asort() или natsort().

$array = [
    'name' => 'PHP',
    'version' => 8.3,
    'developer' => 'Zend',
];

sort($array);    // Array([0] => PHP [1] => Zend [2] => 8.3)
asort($array);   // Array([name] => PHP [developer] => Zend [version] => 8.3)
natsort($array); // Array([version] => 8.3 [name] => PHP [developer] => Zend)

Для сортировки элементов массива в обратном порядке используют функцию array_reverse().

$array = ['PHP', 'MySQL', 'Zend'];
$array = array_reverse($array); // Array([0] => Zend [1] => MySQL [2] => PHP)

Функция natsort() сортирует элементы по алгоритму «Естественная сортировка».