Heim >Backend-Entwicklung >PHP-Tutorial >Wie gruppiert und summiert man Array-Daten nach Spalten in PHP?
Problem:
Gruppieren Sie bei einem Array mit Schlüssel-Wert-Paaren Daten basierend auf den Werten einer bestimmten Spalte und summieren Sie Daten aus einer anderen Spalte. Wenn Sie beispielsweise das folgende Array haben:
$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], ];
Lösung:
Um die Daten basierend auf der Spalte „Name“ zu gruppieren und die Daten in der Spalte „Name“ zu summieren Führen Sie in der Spalte „Betrag“ die folgenden Schritte aus:
Nach der Iteration über das gesamte Eingabearray enthält das $bankTotals-Array den gruppierte Daten mit den Banknamen als Schlüssel und den summierten Beträgen als Werten.
Hier ist der Code, um das Gewünschte zu erreichen Ausgabe:
$bankTotals = array(); foreach($array as $amount) { $bankTotals[$amount['name']] += $amount['amount']; } print_r($bankTotals);
Ausgabe:
Array ( [Bank BRI] => 34534534 [Bank BCA] => 1435773657 [Bank CIMB Niaga] => 1338303418 [Bank BNI] => 124124 [Bank Mandiri] => 0 [Bank Permata] => 352352353 )
Das obige ist der detaillierte Inhalt vonWie gruppiert und summiert man Array-Daten nach Spalten in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!