Aprenda a ordenar um array em PHP

Veja como ordenar arrays em PHP utilizando funções nativas para organizar dados de maneira eficiente.

Como ordenar um array em PHP?

A ordenação de arrays é uma funcionalidade essencial para organizar dados em listas de produtos, classificações e outros cenários. O PHP oferece diversas funções para ordenar arrays numéricos e associativos.

Ordenando um array numérico com sort()

A função sort() ordena um array em ordem crescente:

<?php
$numeros = [5, 3, 9, 1, 7];
sort($numeros);
print_r($numeros);
?>

Saída:

Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 )

Ordenando em ordem decrescente com rsort()

Se precisarmos da ordem inversa, usamos rsort():

<?php
$numeros = [5, 3, 9, 1, 7];
rsort($numeros);
print_r($numeros);
?>

Isso organizará os números de forma decrescente.

Ordenando arrays associativos com asort()

A função asort() mantém a associação entre chave e valor ao ordenar:

<?php
$idades = ["Ana" => 25, "Carlos" => 30, "Beatriz" => 20];
asort($idades);
print_r($idades);
?>

Os valores são ordenados, mas as chaves mantêm sua relação original.

Ordenando com critérios personalizados usando usort()

Para ordenar com uma lógica personalizada, usamos usort():

<?php
$pessoas = [
    ["nome" => "Carlos", "idade" => 30],
    ["nome" => "Ana", "idade" => 25],
    ["nome" => "Beatriz", "idade" => 20]
];

usort($pessoas, function($a, $b) {
    return $a["idade"] <=> $b["idade"];
});

print_r($pessoas);
?>

Aqui, ordenamos um array multidimensional pela idade das pessoas.

Ordenar arrays no PHP é essencial para trabalhar com dados estruturados de maneira eficiente. A escolha da função correta depende do tipo de array e do critério de ordenação desejado. Enquanto sort() e rsort() são úteis para listas simples, asort() e usort() permitem ordenações mais complexas, como em arrays associativos e multidimensionais.

Algumas aplicações:

  • Ordenação de listas de produtos por preço ou nome
  • Classificação de rankings e pontuações
  • Organização de arrays associativos mantendo suas chaves
  • Ordenação personalizada em arrays multidimensionais

Dicas para quem está começando

  • Use sort() para ordenar arrays simples de forma crescente.
  • Para ordenar em ordem decrescente, utilize rsort().
  • Se precisar manter a associação entre chaves e valores, prefira asort() ou arsort().
  • Para ordenações personalizadas, usort() permite definir regras específicas.
  • Teste sempre sua ordenação imprimindo o array com print_r() antes e depois da execução.

Contribuições de Daniel Moreira

Compartilhe este tutorial: Como ordenar um array em PHP?

Compartilhe este tutorial

Continue aprendendo:

Como usar expressões regulares no PHP?

Veja como utilizar expressões regulares no PHP para busca, validação e substituição de padrões em strings.

Tutorial anterior

Como remover um elemento de um array?

Veja como remover um elemento específico de um array no PHP utilizando diferentes métodos para manipulação de listas.

Próximo tutorial