176 of 410 menu

Função usort

A função usort ordena um array por valor dos elementos, usando para isso um callback para determinar a ordem dos elementos no array ordenado. A função modifica o próprio array.

A função de comparação deve retornar um número inteiro, que dependendo do resultado da comparação: menor, igual ou maior que zero.

Sintaxe

usort(array &$array, callable $callback): bool

Exemplo

Vamos ordenar o array em ordem crescente dos elementos:

<?php $arr = [1, 3, 2, 5, 4]; function func($a, $b) { if ($a === $b) { return 0; } else if ($a < $b) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Resultado da execução do código:

[1, 2, 3, 4, 5]

Exemplo

E agora vamos ordenar o array em ordem decrescente dos elementos:

<?php $arr = [1, 3, 2, 5, 4]; function func($a, $b) { if ($a === $b) { return 0; } else if ($a > $b) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Resultado da execução do código:

[1, 2, 3, 4, 5]

Exemplo

E agora vamos ordenar o array por crescente quantidade de caracteres nos elementos do array:

<?php $arr = [ '123', '1', '12345', '12', '1234', ]; function func($a, $b) { if (strlen($a) === strlen($b)) { return 0; } else if (strlen($a) < strlen($b)) { return -1; } else { return 1; } } usort($arr, 'func'); var_dump($arr); ?>

Resultado da execução do código:

[ '1', '12', '123', '1234', '12345', ]

Veja também

  • a função sort,
    que ordena em ordem crescente dos elementos
  • a função rsort,
    que ordena em ordem decrescente dos elementos
  • a função ksort,
    que ordena em ordem crescente das chaves
  • a função krsort,
    que ordena em ordem decrescente das chaves
  • a função asort,
    que ordena em ordem crescente dos elementos preservando as chaves
  • a função arsort,
    que ordena em ordem decrescente dos elementos preservando as chaves
  • a função natsort,
    que ordena de forma natural
  • a função natcasesort,
    que ordena de forma natural sem diferenciar maiúsculas e minúsculas
  • a função usort,
    que ordena por callback
  • a função uksort,
    que ordena por callback pelas chaves
  • a função uasort,
    que ordena por callback preservando as chaves
  • a função array_multisort,
    que ordena múltiplos arrays
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar