Шаг 52.
Основы языка PHP.
Сортировка массивов. Функция sort()

    На этом шаге мы рассмотрим использование функции sort().

    Самая простая и, наверное, самая распространенная функция сортировки - sort(). Она располагает элементы массива в алфавитном порядке.

    Общий вид этой функции следующий:


Рис.1. Общий вид функции sort()

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

    Дополнительный второй параметр тип сортировки является необязательным, его можно использовать для изменения поведения сортировки. Этот параметр имеет следующие значения:

    Например:

<pre>
<?php
$closets = array(0 => "Шорты", 1 => "Майка", 2 => "Кроссовки");
sort($closets);
foreach ($closets as $key => $value)
   {
   echo $key . " " . $value . "<br>";   // вывод элемента
   }
?>
</pre>
Текст этой программы можно взять здесь.

    Результат выполнения этой программы смотрите на рисунке 2.


Рис.2. Результат работы скрипта

    Теперь у нас элемент со значением "Кроссовки" имеет ключ 0, элемент со значением "Майка" имеет ключ 1, элемент со значением "Шорты" имеет ключ 2. На самом деле, какие бы у нас не были ключи до сортировки, функция sort() сама индексирует элементы, начиная с нуля. Например:

<pre>
<?php
$closets = array(3 => "Шорты", 4 => "Майка", 1 => "Кроссовки");
sort($closets);
foreach ($closets as $key => $value)
   {
   echo $key . " " . $value . "<br>";   // вывод элемента
   }
?>
</pre>
Текст этой программы можно взять здесь.

    Сравните результат с приведенным на рисунке 2. Как видим, результат точно такой же, как и в первом случае. В связи с этим стоит быть осторожнее при сортировке массивов, где индексация имеет значение. Например, если вы в качестве ключей используете строки, то функция sort() все равно заменит их числами.

    На следующем шаге мы продолжим изучение этого вопроса.




Предыдущий шаг Содержание Следующий шаг