array_multisort

array_multisort -- Ordena múltiplos arrays ou arrays multi-dimensionais

Descrição

bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]])

array_multisort( ) pode ser usada para ordenar vários arrays de uma vez ou apenas um array multi-dimensional de acordo com uma das dimensões . A associação entre chaves e valores é mantida .

Os arrays dados são tratados como colunas de uma tabela a ser classificada pelas linhas - isso lembra a funcionalidade da cláusula ORDER BY da SQL . O primeiro array é o principal na ordenação . As linhas ( valores ) no primeiro array serve de base para a ordenação do próximo , e assim por diante .

A estrutura de argumentos dessa função não é muito normal , mas bastante flexível . O primeiro argumento de todos deve ser um array . Subsequentemente , cada argumento pode ser um array ou um dos sinais de classificação da lista a seguir .

Sinais de ordem de classificação :



Sinais de tipos de ordenação :



Não podem existir dois sinais de ordenação do mesmo tipo especificados para um mesmo array . Os sinais de ordenação especificados depois de um array se aplicam apenas para esse array - a eles são atribuídos por padrão os valores SORT_ASC e SORT_REGULAR depois de cada novo argumento do tipo array .

Retorna TRUE em caso de sucesso ou FALSE em falhas .

Exemplo 1 . Ordenando múltiplos arrays






Nesse exemplo , depois da ordenação , o primeiro array terá 10 , " a " , 100 , 100 . O segundo conterá 1 , 1 , " 2 " , 3 . Os elementos do segundo array que correpondem aos do primeiro ( 100 e 100 ) também foram ordenados .

Exemplo 2 . Ordenando um array multi-dimensional






Nesse exemplo , depois da ordenação , o primeiro array terá 10 , 100 , 100 , " a " (foi ordenado como strings em ordem crescente) , e o segundo conterá 1 , 3 , "2" , 1 (classificado como números , em ordem descrescente ) .