"John","ag"/> "John","ag">

Maison  >  Article  >  développement back-end  >  Comment trier un tableau en PHP et maintenir la relation d'index

Comment trier un tableau en PHP et maintenir la relation d'index

WBOY
WBOYavant
2024-03-19 13:19:13330parcourir

L'éditeur php Banana vous présentera comment trier les tableaux et maintenir les relations d'index en PHP. Le tri des tableaux est une opération courante, mais parfois nous souhaitons que le tableau trié conserve la relation d'index d'origine, afin de garantir l'intégrité et la correspondance des données. En PHP, nous pouvons utiliser certaines fonctions et techniques intégrées pour atteindre cet objectif, de sorte que le tableau trié corresponde toujours à l'index du tableau d'origine. Ensuite, nous discuterons de cette question ensemble, dans l'espoir d'aider tout le monde à mieux appliquer la fonction de tri des tableaux PHP.

Tri des tableaux PHP et maintien de la relation d'index

Citation

En php, les tableaux sont des structures de données dynamiques utilisées pour stocker et gérer des données. Le tri d'un tableau est une opération courante dans le traitement des données, et il est parfois nécessaire de maintenir la relation entre les indices du tableau après le tri.

Fonction ksort()

La fonction

ksort() est utilisée pour trier les tableaux associatifs, elle trie le tableau par ordre croissant en fonction de la valeur de la clé. Si la clé est une chaîne, elle sera triée selon l'ordre alphabétique de la chaîne.

$arr = ["name" => "John", "age" => 30, "city" => "New York"];
ksort($arr);
print_r($arr);

Sortie :

Array
(
[age] => 30
[city] => New York
[name] => John
)

fonction krsort()

La fonction

krsort() est similaire à la fonction ksort(), mais elle trie un tableau associatif par ordre décroissant.

$arr = ["name" => "John", "age" => 30, "city" => "New York"];
krsort($arr);
print_r($arr);

Sortie :

Array
(
[name] => John
[city] => New York
[age] => 30
)

fonction asort()

La fonction

asort() est utilisée pour trier un tableau, elle trie le tableau par ordre croissant en fonction des valeurs du tableau. Si la valeur est une chaîne, elle est triée par ordre alphabétique en fonction de la chaîne.

$arr = [10, 5, 2, 8, 4];
asort($arr);
print_r($arr);

Sortie :

Array
(
[2] => 2
[4] => 4
[5] => 5
[8] => 8
[10] => 10
)

Fonction arsort()

La fonction

arsort() est similaire à la fonction asort(), mais elle trie un tableau par ordre décroissant.

$arr = [10, 5, 2, 8, 4];
arsort($arr);
print_r($arr);

Sortie :

Array
(
[10] => 10
[8] => 8
[5] => 5
[4] => 4
[2] => 2
)

fonction sort()

La fonction

sort() est utilisée pour trier un tableau, elle trie le tableau par ordre croissant en fonction des valeurs du tableau. Cependant, la fonction sort() réindexe le tableau, entraînant la perte de la relation d'index.

$arr = ["name" => "John", "age" => 30, "city" => "New York"];
sort($arr);
print_r($arr);

Sortie :

Array
(
[0] => John
[1] => New York
[2] => 30
)

Utilisez la fonction de comparaison personnalisée

Pour trier un tableau via une fonction de comparaison personnalisée et maintenir la relation d'index, vous pouvez utiliser la fonction uasort() ou usort().

function compare($a, $b) {
return strnatcmp($a["name"], $b["name"]);
}

$arr = ["name" => "John", "age" => 30, "city" => "New York"];
uasort($arr, "compare");
print_r($arr);

Sortie :

Array
(
[name] => John
[city] => New York
[age] => 30
)

Résumé

Vous pouvez maintenir des relations d'index lors du tri des tableaux PHP en utilisant ksort(), krsort(), asort(), arsort() et des fonctions de comparaison personnalisées. Ceci est utile si vous avez toujours besoin d'accéder à l'index d'origine après le tri.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer