ホームページ >バックエンド開発 >PHPチュートリアル >PHP で 2D 配列の単一列の値を効率的に合計するにはどうすればよいですか?

PHP で 2D 配列の単一列の値を効率的に合計するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-10 13:48:15626ブラウズ

How Can I Efficiently Sum Values in a Single Column of a 2D Array in PHP?

2D 配列の 1 つの列の値の合計

関数を使用せずに、多次元配列の特定の列の値の合計を計算するにはforeach ループの場合は、次のメソッドの使用を検討してください:

PHP 5.5 ソリューションarray_column と array_sum を使用する:

$value = array_sum(array_column($arr, 'f_count'));

array_reduce を使用する代替ソリューション:

$value = array_reduce($arr, function ($carry, $item) {
    return $carry + $item['f_count'];
}, 0);

これらのメソッドは、foreach ループの必要性を回避し、効率的な目的の列の値を合計する方法。

あるいは、次の方法もあります。フラット化された配列を返すようにクエリを変更します。

$query = "SELECT f_count from users WHERE gid=:gid";
...
$array = $stmt->fetchAll(\PDO::FETCH_COLUMN);

これにより、f_count 値のみを含む 1 次元配列が生成され、array_sum を使用して合計できます。

以上がPHP で 2D 配列の単一列の値を効率的に合計するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。