Jumlah Nilai dalam Satu Lajur Tatasusunan 2D
Untuk mengira jumlah nilai dalam lajur tertentu tatasusunan berbilang dimensi tanpa menggunakan untuk setiap gelung, pertimbangkan untuk menggunakan kaedah berikut:
Penyelesaian PHP 5.5 menggunakan array_column dan array_sum:
$value = array_sum(array_column($arr, 'f_count'));
Penyelesaian Alternatif Menggunakan array_reduce:
$value = array_reduce($arr, function ($carry, $item) { return $carry + $item['f_count']; }, 0);
Kaedah ini mengelakkan keperluan untuk gelung foreach dan menyediakan cara yang cekap untuk menjumlahkan nilai dalam lajur yang dikehendaki.
Sebagai alternatif, anda boleh mengubah suai pertanyaan anda untuk mengembalikan tatasusunan yang diratakan:
$query = "SELECT f_count from users WHERE gid=:gid"; ... $array = $stmt->fetchAll(\PDO::FETCH_COLUMN);
Ini akan menghasilkan tatasusunan satu dimensi dengan hanya nilai f_count, yang kemudiannya boleh dijumlahkan menggunakan array_sum.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjumlahkan Nilai dengan Cekap dalam Lajur Tunggal Tatasusunan 2D dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!