Главная Свежие Последние Лучшие Контактная информация  
 
 


Функции » Массивы: array_multisort
array_multisort - сортирует многомерный или несколько одномерных массивов.

Описание
bool array_multisort (array ar1 [, mixed arg [, mixed ... [, array ...]]])
array_multisort() может использоваться для сортировки нескольких массивов за раз или многомерного массива по одному из измерений. Она обслуживает ассоциацию ключей при сортировке.

Массивы на входе рассматриваются как столбцы таблицы, сортируемые по рядам - это напоминает функциональность операции ORDER BY языка SQL. Первый массив будет primary/первичным для сортировки по нему. Одинаковые ряды (значения) в этом массиве сортируются следующим входящим массивом, и так далее.

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

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

SORT_ASC - сортировка в порядке возрастания

SORT_DESC - сортировка в порядке убывания

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

SORT_REGULAR - нормальное сравнение элементов

SORT_NUMERIC - числовое сравнение элементов

SORT_STRING - строковое сравнение элементов

После каждого массива нельзя специфицировать два флага сортировки одного типа. Флаги сортировки, специфицированные после аргумента массива, примеряются только к данному массиву - они восстанавливают значения по умолчанию SORT_ASC и SORT_REGULAR перед каждым новым аргументом массива.

Возвращает TRUE при успехе, FALSE - при неудаче.

Пример 1. Сортировка нескольких массивов
$ar1 = array ("10", 100, 100, "a");
$ar2 = array (1, 3, "2", 1);
array_multisort ($ar1, $ar2);



В этом примере после сортировки первый массив будет содержать 10, "a", 100, 100. Второй массив будет содержать 1, 1, "2", 3. Вхождения второго массива, соответствующие идентичным вхождениям первого массива (100 и 100) будут также отсортированы.

Пример 2. Сортировка многомерного массива
$ar = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1));
array_multisort ($ar[0], SORT_ASC, SORT_STRING,
$ar[1], SORT_NUMERIC, SORT_DESC);



В этом примере, после сортировки, первый массив будет содержать 10, 100, 100, "a" (они были отсортированы как строки в порядке возрастания), а второй массив будет содержать 1, 3, "2", 1 (отсортированы как числа в порядке убывания).

Добавить в закладки:

 

теги: array_multisort
 

  Еще статьи
Возвращаемые значения 94
Константы: Предопределённые константы mbstring 169
Операции: Логические операции 123
Типа данных: Объекты 180
com_set 195
 


  Категории
Начнем 13
Справочник языка 89
Возможности 12
Функции 142
Расширение PHP 4.0 0
FAQ 0
 

  Теги
 

  Лучшее на сайте
Безопасность: Скрытие PHP 471
Что такое PHP? 445
Безопасность: Данные, отправляемые пользователем 373
foreach 353
Безопасность: Безопасность баз данных 333
Файл конфигурации 332
Операции: Строковые операции 310
Безопасность: CGI-двоичный 305
Безопасность: Безопасность файловой системы 297
Безопасность: Обзор 290
 

  Друзья сайта
полиграфия недорого
 

  Интересное
 

 
Использование материалов только при активной гиперссылке "http://iamcoder.net"
Copyright 2008 http://iamcoder.net Серия сайтов: "Стань умным!".