第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在保持結(jié)構(gòu)的同時求和多維數(shù)組中特定鍵的值

在保持結(jié)構(gòu)的同時求和多維數(shù)組中特定鍵的值

PHP
www說 2021-04-28 14:16:17
我有一個多維數(shù)組,我試圖在保持?jǐn)?shù)組結(jié)構(gòu)的同時對值求和。該數(shù)組包含帶有特定類型財務(wù)數(shù)據(jù)的data ['tags']的“財務(wù)”數(shù)組。每個“財務(wù)”的鍵在整個數(shù)組中都是相同的,例如,每個“財務(wù)”將具有“收入”和“費用”。公司在整個數(shù)組中也是相同的,但需要在最終數(shù)組中返回這是我正在使用的數(shù)據(jù)數(shù)組的確切格式:$array = [  [    "financials" => [      [        "data" => [          "tag" => "revenue",        ],        "value" => 1,      ],      [        "data" => [          "tag" => "expenses",        ],        "value" => 10,      ],    ],    "company" => [      "id" => 1,      "name" => "company, inc",    ],  ],  [    "financials" => [      [        "data" => [          "tag" => "revenue",        ],        "value" => 2,      ],      [        "data" => [          "tag" => "expenses",        ],        "value" => 20,      ],    ],    "company" => [      "id" => 1,        "name" => "company, inc",    ],  ],];我試圖弄清楚如何對每個data ['tag']值的每個“值”求和,例如,如果計算上述數(shù)組,我想要得到的最終結(jié)果是:[  "financials" => [    [      "data" => [        "tag" => "revenue",      ],      "value" => 3,    ],    [      "data" => [        "tag" => "expenses",    ],      "value" => 30,    ],  ],  "company" => [    "id" => 1,    "name" => "company, inc",  ],],它保留了原始的數(shù)組結(jié)構(gòu),但已為每個data ['tag']值匯總了財務(wù)值。
查看完整描述

1 回答

?
慕后森

TA貢獻(xiàn)1802條經(jīng)驗 獲得超5個贊

此代碼應(yīng)執(zhí)行以下操作:


$array = [

    [

        "financials" => [

            [

                "data" => [

                    "tag" => "revenue",

                ],

                "value" => 1,

            ],

            [

                "data" => [

                    "tag" => "expenses",

                ],

                "value" => 10,

            ],

        ],

        "company" => [

            "id" => 1,

            "name" => "company, inc",

        ],

    ],

    [

        "company" => [

            "id" => 1,

            "name" => "company, inc",

        ],

        "financials" => [

            [

                "data" => [

                    "tag" => "revenue",

                ],

                "value" => 2,

            ],

            [

                "data" => [

                    "tag" => "expenses",

                ],

                "value" => 20,

            ],

        ],

    ],

];

$company = $array[0]['company'];


$summedArray = $usedTags = [];

$summedArray['company'] = $company;

$summedArray['financials'] = [];

foreach ($array as $set) {

    $data = $set['financials'];

    foreach ($data as $dataSet) {

        if (in_array($dataSet['data']['tag'], $usedTags) === false) {

            $summedArray['financials'][] = [

                "data" => [

                    "tag" => $dataSet['data']['tag']

                ],

                "value" => $dataSet['value']

            ];

            $usedTags[] = $dataSet['data']['tag'];

        } else {

            $summedArray['financials'][array_search($dataSet['data']['tag'], $usedTags)]['value'] += $dataSet['value'];

        }

    }

}


var_dump($summedArray);

希望對您有幫助


查看完整回答
反對 回復(fù) 2021-05-14
  • 1 回答
  • 0 關(guān)注
  • 146 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號