Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich die Werte in der Spalte eines 2D-Arrays in PHP effizient summieren?
Effizientes Summieren von Werten in der Spalte eines 2D-Arrays
Betrachten Sie ein Array von Benutzerdaten mit den Feldern „f_count“ und „uid“. Um Werte in der Spalte „f_count“ zu summieren, ohne eine foreach-Schleife zu verwenden, bieten die folgenden Techniken effektive Lösungen:
Verwenden Sie in PHP-Versionen 5.5 die Funktionen array_column() und array_sum(), die eine elegante Lösung bieten:
$value = array_sum(array_column($arr, 'f_count'));
Ein weiterer effizienter Ansatz für PHP 5.4 und höher verwendet array_reduce() in Verbindung mit einem Anonymous Funktion:
$value = array_reduce($arr, function ($carry, $item) { return $carry + $item['f_count']; }, 0);
Beide Techniken vermeiden iterative Schleifen, was zu einer verbesserten Leistung führt.
Alternativ kann auch die Änderung der Datenbankabfrage zur Rückgabe eines abgeflachten Arrays die Notwendigkeit einer weiteren Verarbeitung überflüssig machen:
$query = "SELECT SUM(f_count) AS total_f_count FROM users WHERE gid=:gid";
Diese Abfrage gibt eine einzelne Zeile zurück, die die Summe von f_counts enthält, wodurch eine nachfolgende Array-Manipulation unnötig wird.
Das obige ist der detaillierte Inhalt vonWie kann ich die Werte in der Spalte eines 2D-Arrays in PHP effizient summieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!