Maison >développement back-end >tutoriel php >Comment trier un tableau PHP multidimensionnel par valeurs de tableau interne ?

Comment trier un tableau PHP multidimensionnel par valeurs de tableau interne ?

DDD
DDDoriginal
2024-11-03 02:01:29613parcourir

How to Sort a Multi-Dimensional PHP Array by Inner Array Values?

Tri des tableaux PHP multidimensionnels par valeurs de tableau internes

Le tri des tableaux multidimensionnels en PHP est une tâche courante dans le traitement des données et peut être difficile lorsque les critères de tri se trouvent dans un tableau imbriqué. Dans cet article, nous allons explorer comment trier un tableau PHP en fonction d'une valeur spécifique dans le tableau interne, en particulier la clé "name".

Pour relever ce défi, nous introduirons une fonction de tri personnalisée appelée array_sort. . Cette fonction prend un tableau d'entrée, la clé de tri et un ordre de tri facultatif (croissant ou décroissant).

La fonction array_sort crée initialement de nouveaux tableaux pour le tri et les résultats triés. Il parcourt le tableau d'entrée, extrayant les paires clé-valeur spécifiées dans le tableau de tri. Elle applique ensuite l'algorithme de tri approprié (asort pour ascendant ou arsort pour décroissant) au tableau de tri.

Enfin, la fonction reconstruit le tableau trié en attribuant les valeurs du tableau d'origine aux clés nouvellement triées. Le tableau résultant sera trié en fonction de la clé de tableau interne spécifiée.

Utilisation :

Pour utiliser la fonction array_sort, vous pouvez suivre ces étapes :

  1. Appelez la fonction array_sort avec le tableau d'entrée, la clé de tri et l'ordre de tri souhaité (facultatif).
  2. Stockez le tableau trié dans une nouvelle variable.
  3. Le tableau trié sera désormais accessible via la nouvelle variable.

Exemple :

Considérez le tableau d'entrée suivant :

$list = [
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
];

Pour trier le tableau par ordre alphabétique selon la clé de nom, vous utiliserez :

$sortedList = array_sort($list, 'name', SORT_ASC);

Le tableau $sortedList résultant sera trié comme suit :

[
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
]

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