Como ordenar uma matriz associativa em ordem crescente, de acordo com a chave em PHP?
Existem várias maneiras de classificar uma matriz associativa em ordem crescente de acordo com a chave em PHP. Aqui estão alguns métodos:
Método 1: Usando a função ksort()
A função ksort() classifica uma matriz associativa em ordem crescente de acordo com a chave.
Exemplo:
$fruits = array("d"=>"limão", "a"=>"laranja", "b"=>"banana", "c"=>"maçã");
ksort($fruits);
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
Saída:
a = laranja
b = banana
c = maçã
d = limão
Método 2: Usando a função asort()
A função asort() classifica uma matriz associativa em ordem crescente de acordo com o valor, mantendo a associação da chave.
Exemplo:
$fruits = array("d"=>"limão", "a"=>"laranja", "b"=>"banana", "c"=>"maçã");
asort($fruits);
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
Saída:
a = laranja
b = banana
c = maçã
d = limão
Método 3: Usando a função uksort()
A função uksort() permite que você defina uma função de comparação personalizada para classificar a matriz associativa em ordem crescente de acordo com a chave.
Exemplo:
function cmp($a, $b) {
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
$fruits = array("d"=>"limão", "a"=>"laranja", "b"=>"banana", "c"=>"maçã");
uksort($fruits, "cmp");
foreach ($fruits as $key => $val) {
echo "$key = $val\n";
}
Saída:
a = laranja
b = banana
c = maçã
d = limão