Az array_multisort() arra használható, hogy egyszerre több tömböt vagy egy többdimenzós tömböt rendezzen sorba valamelyik dimenziója szerint. A kulcsokat megőrzi a rendezés során.
A megadott tömböket egy képzeletbeli, sorok alapján rendezendő táblázat oszlopainak tekinthetők. Ez hasonlít az SQL ORDER BY cikkelyének feladatára. Ez első tömb, ami alapján először rendez. Az ebben a tömbben levő ugyanolyan sorok (elemek) a soron következő tömb szerint lesznek tovább rendezve, és így tovább végig a tömbökön.
Ennek a függvénynek a argumentumlistája kicsit szokatlan, de nagyon rugalmas. A legelső paraméternek mindig tömbnek kell lennie, ezután minden paraméter lehet egy tömb vagy egy a következő rendezést szabályzó jelzőértékek közül.
Sorrendi jelzők:
SORT_ASC - növekvő sorrendbe rendez
SORT_DESC - csökkenő sorrendbe rendez
Rendezési jelzők:
SORT_REGULAR - megszokott módon hasonlítja össze az elemeket
SORT_NUMERIC - számként hasonlítja össze az elemeket
SORT_STRING - szövegként hasonlítja össze az elemeket
Nem lehet két ugyanolyan típusú jelzőt egymás után megadni. Ezek a jelzők csak a közvetlenül előttük álló tömb szerinti rendezést befolyásolják, minden tömb paraméternél az alapértelmezés lép életbe: SORT_ASC és SORT_REGULAR.
Siker esetén TRUE értékkel tér vissza, ellenkező esetben FALSE értéket ad.
Példa 2. Többdimenziós tömbök rendezése
A rendezés után a $ar tömb: (Az első szövegként növekvő sorrendbe rendezve, a másodikban számként csökkenő sorrendbe rendezve.)
|