Maison > développement back-end > tutoriel php > Comment regrouper et additionner les données d'un tableau pour créer un tableau associatif aplati ?

Comment regrouper et additionner les données d'un tableau pour créer un tableau associatif aplati ?

Linda Hamilton
Libérer: 2024-12-25 02:39:09
original
965 Les gens l'ont consulté

How to Group and Sum Array Data to Create a Flattened Associative Array?

Regroupement des données d'un tableau et somme des valeurs pour un tableau associatif aplati

Étant donné un tableau de données associatives, le défi consiste à regrouper les éléments par une colonne ( par exemple, « nom ») et additionner les valeurs d'une autre colonne (par exemple, « montant »). Le résultat est un tableau associatif aplati avec des groupes comme clés et des montants additionnés comme valeurs.

Données de tableau fournies

$array = [
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 1412341234],
    ['name' => 'Bank CIMB Niaga', 'amount' => 532532552], 
    ['name' => 'Bank BRI', 'amount' => 34534534], 
    ['name' => 'Bank CIMB Niaga', 'amount' => 453425243], 
    ['name' => 'Bank BRI', 'amount' => 0], 
    ['name' => 'Bank BNI', 'amount' => 124124], 
    ['name' => 'Bank CIMB Niaga', 'amount' => 352345623], 
    ['name' => 'Bank BCA', 'amount' => 23432423], 
    ['name' => 'Bank Mandiri', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 0], 
    ['name' => 'Bank BCA', 'amount' => 0], 
    ['name' => 'Bank Permata', 'amount' => 352352353],
];
Copier après la connexion

Solution

Pour regrouper les données du tableau par « nom » et additionner les valeurs « montant », suivez ces étapes :

  1. Initialisez un tableau vide appelé $bankTotals.
  2. Parcourez le tableau $ à l'aide d'une boucle foreach.
  3. Pour chaque élément du tableau, récupérez le Clés 'nom' et 'montant'.
  4. Si la clé n'existe pas dans $bankTotals, définissez-la sur 0.
  5. Incrémentez le « montant » pour le nom de la banque actuelle dans $bankTotals.

Code :

$bankTotals = array();
foreach($array as $amount)
{
  $bankTotals[$amount['name']] += $amount['amount'];
}
Copier après la connexion

Sortie :

array (
  'Bank BRI' => 34534534,
  'Bank BCA' => 1435773657,
  'Bank CIMB Niaga' => 1338303418,
  'Bank BNI' => 124124,
  'Bank Mandiri' => 0,
  'Bank Permata' => 352352353,
)
Copier après la connexion

Le tableau $bankTotals contient désormais le données regroupées et additionnées, avec les noms des banques comme clés et les montants totaux comme valeurs. Ce tableau associatif aplati est prêt à être utilisé ultérieurement dans votre application.

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 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