Необходимо отсортировать массив определенным образом.
Для сортировки массива в общепринятом смысле этого слова используйте функцию sort():
$states = array('Delaware', 'Pennsylvania', 'New Jersey');
sort($states);
Для сортировки в числовом порядке передайте SORT_NUMERIC в качестве второго аргумента функции sort().
$scores = array(1, 10, 2, 20);
sort($scores, SORT_NUMERIC);
Числа будут отсортированы в порядке возрастания (1, 2, 10, 20) вместо лексикографического порядка (1, 10, 2, 20).
Функция sort() не сохраняет связи ключ/значение между элементами; вместо этого она реиндексирует элементы, начиная с 0 по возрастанию. (Единственным исключением является одноэлементный массив;
индекс его единственного элемента не сбрасывается в 0. Это исправлено, начиная с версии PHP 4.2.3.)
Для сохранения связей ключ/значение используйте функцию asort().
Функция asort() обычно используется для ассоциативных массивов,
но она может оказаться полезной и в случае, когда индексы элементов
имеют смысловое содержание:
$states = array(1 => 'Delaware', 'Pennsylvania', 'New Jersey');
asort($states);
while (list($rank, $state) = each($states)) {
print "$state was the #$rank state to join the United States\n";
}
Используйте функцию natsort() для упорядочения массива по естественному алгоритму сортировки. При естественной сортировке можно смешивать строки и числа внутри элементов и получать при этом правильный результат.
$tests = array('test1.php', 'test10.php', 'test11.php', 'test2.php');
natsort($tests);
Теперь элементы расположены по порядку: 'test1.php', 'test2.php',
'test10.php' и 'test11.php'. При естественной сортировке число 10 располагается после числа 2; обычная сортировка приведет к противоположному результату. Для выполнения нечувствительной к регистру
естественной сортировки используйте функцию natcasesort().
Чтобы отсортировать массив в обратном порядке, используйте функцию rsort() или функцию arsort(), которая действует подобно функции rsort(), но к тому же сохраняет ключи. Не существует функции natrsort() или natcasersort(). В эти функции можно также передать в
качестве аргумента выражение SORT_NUMERIC.
См. также
Документацию по функции sort() на http://www.php.net/sort, по функции asort() на http://www.php.net/asort, по функции natsort() на http://www.php.net/natsort, по функции natcasesort() на http://www.php.net/natcasesort, по функции rsort() на http://www.php.net/rsort и по функции arsort() на http://www.php.net/arsort.