Php сортиране масиви
Аз вече писах за масиви. Масивите са много удобни за обработване на големи количества информация. Има много възможности за комфортна работа с тях. По-специално, днес ние ще се съсредоточи върху сортиране. Нищо ново, аз не се отваря, само да ви запозная с най-необходимите за ежедневна кодиране.
Сортиране индексирани масиви: сортиране () и rsort ()
сортиране () функция сортира стойностите в индексиран масив във възходящ ред. Това означава, че идва преди Z, 0 -Преди 9. Главни букви в малки букви на номера. Например:
rsort () - този вид () обратно:
Всички сортиране-функция връща вярно за успех и невярна на лентяй)
Сортиране асоциативни масиви: asort () и arsort ()
сортиране () и rsort () са много добри за индексирани матрици, които не е нужно да се притеснявате за клавиша за връзка и стойност. Може да получите неочаквани) Например:
Това може да се види, че е имало объркване, и първоначалната структура «заглавие», «директор», «година» и «минути» променило.
Ако искате да сортирате асоциативен масив на първичния ключ, използвайте asort () и arsort () Тези функции позволяват свързване на ключове и стойности
За повишаване на последователността на подреждане е отговорна функция asort ():
Сортиране асоциативни масиви от ключово: ksort () и krsort ()
ksort () възходящо сортиране ключова стойност. krsort () - ред. Както asort () с arsort (), тази функция поддържа връзката между стойност на ключа. например:
Сортиране комплекс и многомерен масиви array_multisort ()
Много мощен функция array_multisort () можете да сортирате многомерен масив. поддържане на връзката между масиви.
Като цяло, сега ние виждаме всичко:
Сортиране сложни масиви
Сортиране използване array_multisort (), само да уточним тези масиви, които се нуждаят obratotat:
Този код се показва:
Array ([0] => Alfred Hitchcock [1] => Мартин Скорсезе [2] => Stanley Кубрик)
Array ([0] => Задна Прозорец [1] => Mean улици [2] => изцяло метален кожух)
Array ([0] => 1954 [1] => 1973 [2] => 1987)
Първо array_multisort () сортира стойностите в $ директори във възходящ ред, а след това другите две, както добре.
Какво става, ако искаме да сортирате, например, първо «заглавие». Просто се предлага списък от $ на заглавия:
Сортиране по ... още ...
Ако първият масив съдържа някакво количество ID-номера, след array_multisort () видове
до тези стойности на първия масив, а след това - на втория, и така нататък. например:
Този код дава следното - имайте предвид, че «Портокал с часовников механизъм» към «Full Metal Jacket":
Array ([0] => Alfred Hitchcock [1] => Мартин Скорсезе [2] => Stanley Кубрик [3] => Stanley Кубрик)
Array ([0] => Задна Прозорец [1] => Mean улици [2] => с часовников механизъм Orange [3] => изцяло метален кожух)
Array ([0] => 1954 [1] => 1973 [2] => 1971 [3] => 1987)
Промяна на реда на сортиране
Можете да пропуснете (по желание) флаг аргумент след аргумент масив за промяна на реда на сортиране:
SORT_ASC
Сортиране по възходящ ред
SORT_DESC
Сортиране по низходящ ред
Има и други знамена, които могат да бъдат използвани в array_multisort () - и други функции за сортиране. в действителност, за да се контролират за сортиране на средствата. Повече за сортиране () може да бъде намерена в ръководството за PHP.
След това във възходящ ред на $ директори, а след това низходящ $ заглавията:
Ето какво се случи: имайте предвид, че «Full Metal Jacket» сега, преди «Портокал с часовников механизъм":
Array ([0] => Alfred Hitchcock [1] => Мартин Скорсезе [2] => Stanley Кубрик [3] => Stanley Кубрик)
Array ([0] => Задна Прозорец [1] => Mean улици [2] => изцяло метален кожух [3] => с часовников механизъм Orange)
Array ([0] => 1954 [1] => 1973 [2] => 1987 [3] => 1971)
Сортиране многоизмерен масив
Сортиране чрез array_multisort () преминава през първия елемент на всеки спектър. Ако две стойности са същите, sortirvka продължава 2y елемент и TP.
Това е пример. който показва как работи
Сортирането е от директор, а след това по име, а след това от години:
Array
(
[0] => Array
(
[Директор] => Alfred Hitchcock
[Дял] => Заден прозорец
[Година] => 1 954
)
[1] => Array
(
[Директор] => Мартин Скорсезе
[Дял] => Mean улици
[Година] => 1 973
)
[2] => Array
(
[Директор] => Stanley Кубрик
[Дял] => с часовников механизъм Orange
[Година] => 1 971
)
[3] => Array
(
[Директор] => Stanley Кубрик
[Дял] => изцяло метален кожух
[Година] => 1 987
)
Както можете да видите, array_multisort () otsortirval масив от директор. Когато името на режисьора повтори, ( «Стенли Кубрик»), сортиране продължи заглавие.
За otsortrovat в обратен ред, изберете SORT_DESC флаг като втори array_multisort () аргумент. Лесно!
В този урок разгледахме прост PHP-функции за sortrovki масив:
* Sort () и rsort () за sortrovki индексирани масиви
* Asort () и arsort () за масиви sortrovki asotsiativnyh
* Ksort () и krsort () за sortrovki assotsiativnh масив по ключ
* Array_multisort () за сортиране за сортиране сложни и многоизмерни масиви
PHP-сортиране масиви са много мощни и лесни, можете да сортирате и колко бързо искате). Само тук ние вече проучени 13 функции! За да видите повече, вижте ръководството
Абонамент за RSS блог директория