Daten in einem 2D-Array gruppieren und summieren
In diesem Szenario möchten Sie die Zeilen eines 2D-Arrays basierend auf einem bestimmten gruppieren Werte der Spalte und dann die Werte einer anderen Spalte innerhalb jeder Gruppe summieren.
Eingabe Daten:
[ ['quantity' => 5, 'dd' => '01-Nov-2012'], ['quantity' => 10, 'dd' => '01-Nov-2012'], ['quantity' => 3, 'dd' => '02-Nov-2012'], ['quantity' => 4, 'dd' => '03-Nov-2012'], ['quantity' => 15, 'dd' => '03-Nov-2012'], ];
Gewünschtes Ergebnis:
[ ['quantity' => 15, 'dd' => '01-Nov-2012'], ['quantity' => 3, 'dd' => '02-Nov-2012'], ['quantity' => 19, 'dd' => '03-Nov-2012'], ];
Implementierung:
Um dies zu erreichen, Befolgen Sie diese Schritte:
Für jede Zeile:
Der folgende PHP-Code demonstriert diesen Prozess:
$in = array(array()); // your input $out = array(); foreach ($in as $row) { if (!isset($out[$row['dd']])) { $out[$row['dd']] = array( 'dd' => $row['dd'], 'quantity' => 0, ); } $out[$row['dd']]['quantity'] += $row['quantity']; } $out = array_values($out); // make the out array numerically indexed var_dump($out);
Dieser Ansatz gruppiert die Eingabedaten effektiv nach der Spalte „dd“ und summiert sie Geben Sie für jede Gruppe Werte in der Spalte „Menge“ ein und erzeugen Sie so die gewünschte Ausgabe.
Das obige ist der detaillierte Inhalt vonWie gruppiert und summiert man Daten in einem 2D-Array nach Spalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!