Maison >développement back-end >tutoriel php >Comment regrouper les données d'un tableau 2D par valeur de colonne dans un tableau 3D en PHP ?

Comment regrouper les données d'un tableau 2D par valeur de colonne dans un tableau 3D en PHP ?

DDD
DDDoriginal
2024-10-28 12:09:30801parcourir

How to Group 2D Array Data by Column Value into a 3D Array in PHP?

Regroupement des données d'un tableau 2D en fonction de la valeur de la colonne pour créer un tableau 3D

Lorsque vous travaillez avec des tableaux multidimensionnels, il peut devenir nécessaire de réorganiser les données en différents groupements. Considérons un scénario dans lequel nous disposons d'un ensemble d'informations sur les clients et devons les regrouper en fonction de leur niveau. Cependant, nous n'avons aucune connaissance préalable de la valeur du niveau maximum.

Pour y parvenir, nous pouvons exploiter la flexibilité de PHP dans les structures de tableaux. Voici une approche étape par étape pour regrouper les données :

  1. Créez un tableau temporaire pour trier les données :

    <code class="php">foreach ($input_arr as $key => &$entry) {
        $level_arr[$entry['level']][$key] = $entry;
    }</code>
  2. Cette boucle parcourt chaque élément du tableau d'origine et attribue à chaque élément un index de niveau spécifique dans le tableau $level_arr. En conséquence, le tableau $level_arr regroupe les éléments selon leurs valeurs de niveau.

Après la boucle, le tableau $level_arr aura la structure groupée souhaitée, chaque valeur de niveau représentant une clé pour un imbriqué. tableau contenant toutes les informations client à ce niveau.

Alternativement, si vous contrôlez la construction du tableau initial, il est plus efficace de stocker les données dans la structure souhaitée dès le départ. Cette approche élimine le besoin d'une étape de tri distincte.

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