Ordenando Arrays
O PHP tem muitas funções para lidar com ordenação de arrays, e esse
documento existe para ajudar o desenvolvedor a lidar com elas.
As principais diferenças são:
Algumas ordenam com base nas chaves do array, enquanto outras
pelos valores: $array['chave'] = 'valor';
A correlação entre as chaves e os valores do array não são mantidas depois
da ordenação, o que pode fazer com que as chaves sejam resetadas
numericamente (0, 1, 2, ...)
A ordem da ordenação: alfabética, ascendente (menor para maior),
descendente (maior para menor), natural, aleatório, ou definida pelo usuário
Nota: Todas essas funções agem diretamente na própria variável do array,
ao invés de retornar um novo array ordenado
Se qualquer uma dessas funções avaliar dois membros como iguais
então eles retém sua ordem original.
Antes do PHP 8.2.0, sua ordem eram indefinida (a ordenação não é estável).
Atributos das funções de ordenação
Nome da função
Ordena por
Mantém a associação de chaves
Ordenação
Funções relacionadas
array_multisort
valor
string chaves sim, int chaves não
primeiro array ou opções de ordenação
array_walk
asort
valor
sim
ascendente
arsort
arsort
valor
sim
descendente
asort
krsort
chave
sim
descendente
ksort
ksort
chave
sim
ascendente
krsort
natcasesort
valor
sim
natural, insensível a maiúsculas/minúsculas
natsort
natsort
valor
sim
natural
natcasesort
rsort
valor
não
descendente
sort
shuffle
valor
não
aleatória
array_rand
sort
valor
não
menor para maior
rsort
uasort
valor
sim
definida pelo usuário
uksort
uksort
chave
sim
definida pelo usuário
uasort
usort
valor
não
definida pelo usuário
uasort