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

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

Barbara Streisand
Barbara Streisandoriginal
2024-12-01 16:51:13119parcourir

How to Sort a Multidimensional PHP Array by an Inner Array Field?

Tri d'un tableau multidimensionnel par un champ de tableau interne en PHP

En PHP, vous pouvez manipuler des tableaux multidimensionnels pour organiser les données en fonction de critères spécifiques . Considérons un tableau qui représente une table de base de données, où chaque élément est une ligne et contient un tableau interne de noms et de valeurs de champs.

Pour trier ce tableau par le champ « prix » des tableaux internes, suivez ces étapes :

  1. Extraire les valeurs "prix" : Utilisez la fonction array_column pour extraire le champ "prix" et les stocker dans un tableau séparé :

    $prices = array_column($yourArray, "price");
  2. Trier le tableau "prix" : Utilisez la fonction sort() (avec PHP 7 ou version antérieure) ou la fonction sort() (avec PHP 8 et versions ultérieures) pour trier le tableau "prix" par ordre croissant order :

    sort($prices); // For PHP 7 or earlier
    // OR
    $prices = sort($prices); // For PHP 8 and later
  3. Réorganiser le tableau externe : Utilisez la fonction array_multisort() pour réorganiser le tableau externe en fonction du tableau "prix" trié. Il faut un tableau de colonnes (prices), un tableau d'ordre (SORT_ASC) et le tableau à trier (yourArray) :

    // For PHP 7 or earlier:
    array_multisort($prices, SORT_ASC, $yourArray);
    
    // For PHP 8 and later. No need for `$col` variable:
    array_multisort(array_column($yourArray, "price"), SORT_ASC, $yourArray);

En suivant ces étapes, vous pouvez trier efficacement un tableau multidimensionnel basé sur un champ de tableau interne en PHP, vous permettant d'organiser les données dans l'ordre souhaité.

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