Добро пожаловать на форум PHP программистов!
За последние 24 часа нас посетили 8977 программистов и 489 роботов. Сейчас ищут 129 программистов ...
Приступая к работе

sort - Сортирует массив

sort

(PHP 4, PHP 5, PHP 7)

sortСортирует массив

Описание

bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

Эта функция сортирует массив. После завершения работы функции элементы массива будут расположены в порядке возрастания.

Список параметров

array

Входной массив.

sort_flags

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

Флаги сортировки:

  • SORT_REGULAR - обычное сравнение элементов (без изменения типов)
  • SORT_NUMERIC - числовое сравнение элементов
  • SORT_STRING - строковое сравнение элементов
  • SORT_LOCALE_STRING - сравнивает элементы как строки с учетом текущей локали. Используется локаль, которую можно изменять с помощью функции setlocale()
  • SORT_NATURAL - сравнение элементов как строк, используя естественное упорядочение, аналогичное упорядочению в функции natsort()
  • SORT_FLAG_CASE - может быть объединен (побитовое ИЛИ) с константами SORT_STRING или SORT_NATURAL для сортировки строк без учета регистра.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Список изменений

Версия Описание
5.4.0 Добавлена поддержка SORT_NATURAL и SORT_FLAG_CASE в параметре sort_flags
5.0.2 Добавлена поддержка SORT_LOCALE_STRING

Примеры

Пример #1 Пример использования sort()

<?php

$fruits 
= array("lemon""orange""banana""apple");
sort($fruits);
foreach (
$fruits as $key => $val) {
    echo 
"fruits[" $key "] = " $val "\n";
}

?>

Результат выполнения данного примера:

fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange

Фрукты отсортированы в алфавитном порядке.

Пример #2 Пример использования sort() с регистронезависимым естественным упорядочением

<?php

$fruits 
= array(
    
"Orange1""orange2""Orange3""orange20"
);
sort($fruitsSORT_NATURAL SORT_FLAG_CASE);
foreach (
$fruits as $key => $val) {
    echo 
"fruits[" $key "] = " $val "\n";
}

?>

Результат выполнения данного примера:

fruits[0] = Orange1
fruits[1] = orange2
fruits[2] = Orange3
fruits[3] = orange20

Фрукты были отсортированы аналогично функции natcasesort().

Примечания

Замечание: Эта функция присваивает новые ключи элементам массива. Она удалит все существующие ключи, а не просто переупорядочит их.

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

Внимание

Будьте осторожны при сортировке массивов, содержащих элементы разных типов, так как в этом случае результат работы функции sort() может быть непредсказуемым.

Смотрите также



Вернуться к: Функции для работы с массивами

© 2016 «PHP.RU — Сообщество PHP-Программистов»
Главная | Форум | Реклама на сайте | Контакты VIP Сувениры
Разработка компании ODware