ループを使用しない多次元配列の列値の合計
多次元配列を操作する場合、特定の列値の合計を計算するのは困難な場合があります。次の配列について考えてみましょう。
Array ( [0] => Array ( [f_count] => 1 [uid] => 105 ) [1] => Array ( [f_count] => 0 [uid] => 106 ) [2] => Array ( [f_count] => 2 [uid] => 107 ) [3] => Array ( [f_count] => 0 [uid] => 108 ) [4] => Array ( [f_count] => 1 [uid] => 109 ) [5] => Array ( [f_count] => 0 [uid] => 110 ) [6] => Array ( [f_count] => 3 [uid] => 111 ) )
必要な出力は f_count 値の合計、つまり 7 です。
ループなしのソリューション
PHP バージョン 5.5 以降の場合、array_column と array_sum を使用した簡潔な解決策が利用可能です。関数:
$f_counts = array_column($array, 'f_count'); $sum = array_sum($f_counts);
このアプローチにより、ループや複雑なデータ操作テクニックの必要性が回避されます。
代替ソリューション
別のバージョンのPHP、または必要に応じて、より伝統的なアプローチを使用して列値の合計を実現できます:
$sum = 0; foreach ($array as $row) { $sum += $row['f_count']; }
以上がPHPでループを使わずに多次元配列の列の値を合計する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。