Шаг 53.
Основы языка PHP.
Сортировка массивов. Второй параметр функции sort()

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

    Еще одна особенность функции sort() - необязательный второй параметр (флаг), который указывает на тип сортируемых значений. Например:

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

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


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

    В первом случае функция воспринимает все значения как числа, поэтому "Кроссовки" оказались на месте первого элемента (строка преобразовалась в число 0). Во втором случае значения сортируются как строки, поэтому на этот раз строка "Кроссовки" оказалась на месте последнего элемента. Существует так же третий флаг - SORT_REGULAR, который указывает на обычную сортировку.


Задание. Попробуйте отсортировать массив с параметром SORT_REGULAR и прокомментируйте полученный результат.

    Необязательные параметры функции sort() появились только в четвертой версии PHP.

    На следующем шаге мы рассмотрим функцию asort().




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