Resumo : neste tutorial, você aprenderá como usar a uasort()
função PHP para classificar um array associativo.
Introdução à função PHP uasort()
A uasort()
função classifica os elementos de uma matriz associativa com uma função de comparação definida pelo usuário e mantém a associação do índice.
O seguinte mostra a sintaxe da uasort()
função:
uasort(array &$array, callable $callback): bool
Linguagem de código: PHP ( php )
A uasort()
função possui dois parâmetros:
$array
é a matriz de entrada.$callback
é a função de comparação definida pelo usuário.
A uasort()
função retorna true
em caso de sucesso ou false
falha.
A $callback
função aceita dois parâmetros:
callback(mixed $x, mixed $y): int
Linguagem de código: PHP ( php )
A $callback
função retorna um número inteiro. O valor retornado pode ser um número negativo, zero e um número positivo, indicando que $x
é menor que, igual a e maior que $y
, respectivamente.
Função PHP uasort()
O exemplo a seguir usa a uasort()
função para classificar uma matriz associativa:
<?php
$countries = [
'China' => ['gdp' => 12.238 , 'gdp_growth' => 6.9],
'Germany' => ['gdp' => 3.693 , 'gdp_growth' => 2.22 ],
'Japan' => ['gdp' => 4.872 , 'gdp_growth' => 1.71 ],
'USA' => ['gdp' => 19.485, 'gdp_growth' => 2.27 ],
];
// sort the country by GDP
uasort($countries, function ($x, $y) {
return $x['gdp'] <=> $y['gdp'];
});
// show the array
foreach ($countries as $name => $stat) {
echo "$name has a GDP of {$stat['gdp']} trillion USD with a GDP growth rate of {$stat['gdp_growth']}%" . '<br>';
}
Linguagem de código: PHP ( php )
Saída:
Germany has a GDP of 3.693 trillion USD with a GDP growth rate of 2.22%
Japan has a GDP of 4.872 trillion USD with a GDP growth rate of 1.71%
China has a GDP of 12.238 trillion USD with a GDP growth rate of 6.9%
USA has a GDP of 19.485 trillion USD with a GDP growth rate of 2.27%
Linguagem de código: texto simples ( texto simples )
Como funciona.
- Primeiro, defina uma série de países com as informações do PIB. A chave de cada elemento é o nome do país. E o valor de cada elemento é uma matriz que contém o PIB e o crescimento do PIB.
- Segundo, classifique a
$countries
matriz por PIB em ordem crescente.
Resumo
- Use a
uasort()
função para classificar uma matriz associativa com uma função de comparação definida pelo usuário e manter a associação do índice.
Anterior