私はPHPで2D配列を持っていますが、PHPExcelを使用してEXCELシートに保存する前に、データを集計する必要があります。私のデータは既に国別にソートされています。各サブアレイには国名があります。私がしたいことは、国ごとにフィールド「LIVE」の合計数を追加することです。私のテーブルには、次のようになります。PHP 2次元配列を集計する方法
[
[314] => Array
(
[Country] => France
[provider] => HIberica
[status] => inactive
[# per status] => 1
[Live] => 0
)
[315] => Array
(
[Country] => France
[provider] => HIberica
[status] => active
[# per status] => 4223
[Live] => 4171
)
[316] => Array
(
[Country] => United States
[provider] => HarperC
[status] => pending
[# per status] => 69
[Live] => 0
)
[317] => Array
(
[Country] => United States
[provider] => HC
[status] => inactive
[# per status] => 2582
[Live] => 0
)
[318] => Array
(
[Country] => United States
[provider] => HC
[status] => active
[# per status] => 16217
[Live] => 16217
)
[319] => Array
(
[Country] => United States
[provider] => H UK
[status] => active
[# per status] => 70
[Live] => 70
)
]
私はちょうどこのように、ライブフィールドの合計を保持するために各国のサブアレイを追加したい最終結果:
[320] => Array
(
[Country] => United States
[provider] => All Providers
[status] => active
[# per status] => NULL
[Total Live] => 7000 # the total per country goes here
)
私が知っていますarray_walk_recursive
のようなPHP関数が助けてくれるかもしれませんが、どうやってそれを行うのか分かりません。
だから、「LIVE」の値にはすべての国のLIVEの合計を保持したいと思っていますか? –
@ArditMeti私は、各国の合計行(サブ配列)を追加したいのですが、それはその国のLIVEの総数を保持します。この点を明確にするために投稿を編集します。 – Amaynut
あなたは再帰的な散歩は必要ありません。ちょうどループ。 'foreach($ arr $ id => $ child){$ total [$ child ['Country']] + = $ child ['Total Live']; } ' –