(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayObject::asort — Ordenar as entradas por valor
Ordena as entradas em ordem crescente, de forma que suas chaves mantenham sua correlação com os valores que estão associados a elas.
Isso é usado principalmente ao ordenar arrays associativos onde a ordem real dos elementos é significativa.
Nota:
Se dois elementos são comparados como iguais, eles mantêm sua ordem original. Antes do PHP 8.0.0, sua ordem relativa no array ordenado era indefinida.
flags
    O segundo parâmetro opcional flags
    pode ser usado para modificar o comportamento da ordenação usando estes valores:
   
Flags dos tipos de ordenação:
SORT_REGULAR - compara os elementos normalmente;
      os detalhes são descritos na seção operadores de comparação
     SORT_NUMERIC - compara os elementos numericamente
     SORT_STRING - compara os elementos como strings
     SORT_LOCALE_STRING - compara os elementos como
       strings, com base na localidade atual. A localidade
       pode ser alterada usando setlocale()
      
     SORT_NATURAL - compara os elementos como strings
       usando "ordenação natural" como natsort()
      
     SORT_FLAG_CASE - pode ser combinada
       (usando o operador bit a bit OR) com
       SORT_STRING ou
       SORT_NATURAL para ordenar strings sem fazer distinção entre maiúsculas e minúsculas
      
     
   Sempre retorna true.
  
| Versão | Descrição | 
|---|---|
| 8.2.0 | O tipo do retorno agora é true; anteriormente, era bool. | 
Exemplo #1 Exemplo de ArrayObject::asort()
<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$fruitArrayObject = new ArrayObject($fruits);
$fruitArrayObject->asort();
foreach ($fruitArrayObject as $key => $val) {
    echo "$key = $val\n";
}
?>O exemplo acima produzirá:
c = apple b = banana d = lemon a = orange
As frutas foram ordenadas em ordem alfabética, e a chave associada a cada entrada foi mantida.
