Foreach ループを使用しない 2D 配列列の値の合計
PHP 5.4 では、配列の指定された列の値を合計することができます。 foreach ループに頼らない 2D 配列。
を検討してください。次の多次元配列:
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」列の値を合計するには、array_column 関数と array_sum 関数を利用できます:
$value = array_sum(array_column($arr,'f_count'));
このメソッドは「f_count」を抽出します。 array_column を使用して配列の値を 1 次元配列に変換し、array_sum を使用してその配列内の値を合計すると、合計値は次のようになります。 7.
別の SQL クエリ形式を使用したい場合は、1 次元配列を返すようにクエリを変更できます。
$query = "SELECT SUM(f_count) AS f_count_sum FROM users WHERE gid=:gid"; ... $value = $stmt->fetchColumn();
このクエリは、「f_count_sum」という名前の 1 つの列を返します。 " すべての "f_count" 値の合計が含まれており、fetchColumn() を使用して直接アクセスできます。
以上が「foreach」ループを使用せずにPHPで2D配列の列の値を合計する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。