Maison > développement back-end > tutoriel php > Comment regrouper un tableau 2D par valeur de colonne dans un tableau 3D ?

Comment regrouper un tableau 2D par valeur de colonne dans un tableau 3D ?

Susan Sarandon
Libérer: 2024-11-02 17:28:29
original
1018 Les gens l'ont consulté

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

Regrouper les données d'un tableau 2D à l'aide de la valeur de colonne pour un tableau 3D

En programmation, il est souvent nécessaire de manipuler et d'organiser efficacement les structures de données. Le regroupement de données en fonction de critères spécifiques est une tâche courante. Cet article explique comment regrouper un tableau 2D à l'aide d'une valeur de colonne pour créer un tableau 3D.

Considérez le tableau 2D suivant :

[
    ['cust' => 'XT8900', 'type' => 'standard', 'level' => 1],
    ['cust' => 'XT8944', 'type' => 'standard', 'level' => 1],
    ['cust' => 'XT8922', 'type' => 'premier', 'level' => 3],
    ['cust' => 'XT8816', 'type' => 'permier', 'level' => 3],
    ['cust' => 'XT7434', 'type' => 'standard', 'level' => 7],
]
Copier après la connexion

Notre objectif est de regrouper ces données par ' "level", qui crée effectivement un tableau 3D. Le résultat souhaité ressemble à ceci :

Array (

   [1] => Array (
          [0] => Array (
                    [cust] => XT8900
                    [type] => standard
                    )
          [1] => Array (
                    [cust] => XT8944
                    [type] => standard
                    )
          )

   [3] => Array (
          [2] => Array (
                 [cust] => XT8922
                 [type] => premier
                 )

          [3] => Array (
                 [cust] => XT8816
                 [type] => permier
                 )
          )

   [7] => Array (
          [4] => Array (
                 [cust] => XT7434
                 [type] => standard
                 )
          )
)
Copier après la connexion

Approche optimale

La solution la plus efficace consiste à créer le tableau 3D directement si possible. Cependant, si cela n'est pas réalisable, nous pouvons utiliser un tableau temporaire intermédiaire pour le tri :

<code class="php">foreach ($input_arr as $key => &$entry) {
    $level_arr[$entry['level']][$key] = $entry;
}</code>
Copier après la connexion

Il en résulte la structure de tableau 3D souhaitée. Il est important d'envisager de construire le tableau au format final dès le début si possible, pour des performances optimales.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal