"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment regrouper des éléments d'un tableau et combiner les valeurs d'une autre colonne dans un tableau multidimensionnel ?

Comment regrouper des éléments d'un tableau et combiner les valeurs d'une autre colonne dans un tableau multidimensionnel ?

Publié le 2024-11-06
Parcourir:262

How to Group Array Elements and Combine Values from Another Column in a Multidimensional Array?

Regrouper les éléments du tableau par colonne et combiner les valeurs d'une autre colonne

Étant donné un tableau contenant des tableaux imbriqués avec deux colonnes, la tâche consiste à regrouper les sous-tableaux basés sur une colonne spécifique et concatènent les valeurs d'une autre colonne au sein de chaque groupe, ce qui donne une liste séparée par des virgules.

Considérez l'exemple de tableau suivant :

$array = [
    ["444", "0081"],
    ["449", "0081"],
    ["451", "0081"],
    ["455", "2100"],
    ["469", "2100"]
];

Le résultat souhaité est :

[
  ["444,449,451", "0081"],
  ["455,469", "2100"]
]

Une solution à ce problème implique les étapes suivantes :

  1. Parcourir le tableau donné et pour chaque élément :

    • Vérifier si le groupe (représenté par la valeur de la deuxième colonne) existe dans le nouveau tableau.
    • Sinon, créez un nouveau groupe dans le nouveau tableau avec ce groupe.
    • Ajoutez la première valeur de colonne ( l'ID) au groupe correspondant.
  2. Une fois tous les éléments traités, le nouveau tableau contiendra des groupes avec des listes d'ID.
  3. Enfin, restructurez le tableau pour faites correspondre le format requis en créant de nouveaux sous-tableaux pour chaque groupe avec la première colonne concaténée et la deuxième colonne telle quelle.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3