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

WBOY
Libérer: 2024-03-19 13:22:01
avant
344 Les gens l'ont consulté

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);
Copier après la connexion

Sortie :

Array
(
[age] => 30
[city] => New York
[name] => John
)
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
[name] => John
[city] => New York
[age] => 30
)
Copier après la connexion
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
[2] => 2
[4] => 4
[5] => 5
[8] => 8
[10] => 10
)
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
[10] => 10
[8] => 8
[5] => 5
[4] => 4
[2] => 2
)
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
[0] => John
[1] => New York
[2] => 30
)
Copier après la connexion

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);
Copier après la connexion

Sortie :

Array
(
[name] => John
[city] => New York
[age] => 30
)
Copier après la connexion
Copier après la connexion

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!

Étiquettes associées:
source:lsjlt.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!