Heim >Backend-Entwicklung >PHP-Tutorial >Wie gruppiere ich 2D-Array-Zeilen nach Spalten und summiere eine weitere Spalte?
2D-Array-Zeilen nach Spalte gruppieren und eine weitere Spalte summieren
Um ein gruppiertes und summiertes Ergebnis aus einem 2D-Array basierend auf einer bestimmten Spalte zu erhalten können wir die folgende Technik anwenden:
<code class="php">// Assume we have an array $array containing the data as described in the question. $ts_by_url = array(); foreach ($array as $data) { if (!array_key_exists($data['url_id'], $ts_by_url)) { $ts_by_url[$data['url_id']] = 0; } $ts_by_url[$data['url_id']] += $data['time_spent']; }</code>
Die Schleife durchläuft das Array und akkumuliert die Zeit, die für jede eindeutige URL-ID im $ts_by_url-Array aufgewendet wurde. Am Ende der Schleife enthält das Array $ts_by_url die gruppierten und summierten Ergebnisse, wobei die Schlüssel die URL-IDs und die Werte die insgesamt für jede URL-ID aufgewendete Zeit darstellen.
Beispielausgabe:
<code class="php">print_r($ts_by_url); // Output: // Array // ( // [2191238] => 41 // [2191606] => 240 // == 215 + 25 // )</code>
Das obige ist der detaillierte Inhalt vonWie gruppiere ich 2D-Array-Zeilen nach Spalten und summiere eine weitere Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!