Maison >développement back-end >tutoriel php >Comment trier un tableau en fonction d'une paire clé-valeur spécifique à l'aide de PHP, en préservant les noms de clés d'origine ?

Comment trier un tableau en fonction d'une paire clé-valeur spécifique à l'aide de PHP, en préservant les noms de clés d'origine ?

PHPz
PHPzoriginal
2024-04-30 16:30:02565parcourir

Utilisez la fonction PHP uasort et fournissez une fonction de comparaison pour trier le tableau en fonction des valeurs de clé spécifiques dans le tableau tout en conservant les noms de clés d'origine. Les étapes spécifiques sont les suivantes : définir une fonction de comparaison qui accepte deux paires clé-valeur comme paramètres et renvoie un entier ; appeler la fonction uasort, en passant le tableau à trier et la fonction de comparaison conservera la clé d'origine ; des noms.

如何使用 PHP 根据数组中某个具体键值对进行排序,保留原始键名?

Comment utiliser PHP pour trier selon une paire clé-valeur spécifique dans un tableau tout en conservant le nom de clé d'origine ?

En PHP, utilisez la fonction uasort pour trier selon une paire clé-valeur spécifique dans le tableau tout en conservant le nom de clé d'origine. Voici sa syntaxe : uasort 函数可以根据数组中某个具体键值对进行排序,同时保留原始键名。下面是它的语法:

uasort(array $array, callable $value_compare_func)

其中:

  • array 要排序的数组
  • value_compare_func 一个比较函数,它将被用来比较数组中的两个键值对

比较函数应该接受两个参数(数组中两个元素的键值对)并返回一个整数:

  • -1 如果第一个键值对应该排在第二个键值对之前
  • 0 如果两个键值对相等
  • 1 如果第一个键值对应该排在第二个键值对之后

实战案例

假设我们有一个名为 $data

$data = [
    'John Doe' => 85,
    'Jane Smith' => 90,
    'Bob Jones' => 75
];

où :

  • array Le tableau à trier
  • value_compare_func Une fonction de comparaison qui être utilisé pour comparer deux paires clé-valeur dans le tableau
La fonction de comparaison doit accepter deux paramètres (les paires clé-valeur des deux éléments du tableau) et renvoyer un entier :

    -1🎜 Si la première paire clé-valeur doit être triée avant la deuxième paire clé-valeur
  • 🎜0🎜 Si les deux paires clé-valeur sont égales
  • 🎜1🎜 Si la première paire clé-valeur doit être triée après la deuxième paire clé-valeur
🎜🎜Cas pratique🎜🎜🎜Supposons que nous ayons un tableau nommé $data, Celui-ci contient les informations sur les étudiants et leurs notes : 🎜
uasort($data, function($a, $b) {
    return $a - $b;
});
🎜 Nous pouvons utiliser le code suivant pour trier le tableau en fonction des notes tout en conservant les noms de clés d'origine : 🎜
print_r($data);
// 输出:
// Array
// (
//     [Jane Smith] => 90
//     [John Doe] => 85
//     [Bob Jones] => 75
// )
🎜Le tableau trié ressemblera à ceci : 🎜rrreee

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:
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