ホームページ > バックエンド開発 > PHPチュートリアル > 不規則な多次元配列の列の合計を効率的に計算するにはどうすればよいですか?

不規則な多次元配列の列の合計を効率的に計算するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-24 14:45:14
オリジナル
644 人が閲覧しました

How to Efficiently Calculate Column Totals in Irregular Multi-Dimensional Arrays?

多次元配列の列の合計を計算する方法

要素が行と列に配置された多次元配列を考えてみましょう。ただし、キー セットは動的に変化する場合があります。このタスクは、キーのバリエーションに関係なく、各列内の値の合計を計算することです。

Array_Walk_Recursive Method

内部配列が一意のキーを持つことができる一般的なソリューションの場合、次のようになります。利用するarray_walk_recursive():

$final = array();

array_walk_recursive($input, function($item, $key) use (&$final){
    $final[$key] = isset($final[$key]) ?  $item + $final[$key] : $item;
});
ログイン後にコピー

Array_Column メソッド

特定のキー値を合計する必要がある場合は、array_column() を使用できます:

array_sum(array_column($input, 'gozhi')); // Sums the 'gozhi' column
ログイン後にコピー

制服インナー用配列

すべての内部配列が同じキーを持つ場合、初期キー構造を取得します:

$final = array_shift($input);

foreach ($final as $key => &$value){
   $value += array_sum(array_column($input, $key));
}    

unset($value);
ログイン後にコピー

Array_Column の一般的なケース

一意のキーを抽出し、列の合計を実行します:

$final = array();

foreach($input as $value)
    $final = array_merge($final, $value);

foreach($final as $key => &$value)
    $value = array_sum(array_column($input, $key));

unset($value);
ログイン後にコピー

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート