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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何對(duì)多維數(shù)組中的所有列值進(jìn)行求和?

如何對(duì)多維數(shù)組中的所有列值進(jìn)行求和?

PHP
犯罪嫌疑人X 2019-06-19 11:23:11
如何對(duì)多維數(shù)組中的所有列值進(jìn)行求和?如何通過關(guān)聯(lián)鍵添加所有列值?請(qǐng)注意[gozhi]關(guān)鍵是動(dòng)態(tài).輸入數(shù)組:Array (     [0] => Array         (             [gozhi] => 2             [uzorong] => 1             [ngangla] => 4             [langthel] => 5         )     [1] => Array         (             [gozhi] => 5             [uzorong] => 0             [ngangla] => 3             [langthel] => 2         )     [2] => Array         (             [gozhi] => 3             [uzorong] => 0             [ngangla] => 1             [langthel] => 3         ) )預(yù)期結(jié)果:Array (     [gozhi] => 10     [uzorong] => 1     [ngangla] => 8     [langthel] => 10 )
查看完整描述

3 回答

?
拉風(fēng)的咖菲貓

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊

你可以用array_walk_recursive()為您的問題找到一個(gè)通用的解決方案(當(dāng)每個(gè)內(nèi)部數(shù)組可能有唯一的鍵時(shí)).

$final = array();array_walk_recursive($input, function($item, $key) use (&$final){
    $final[$key] = isset($final[$key]) ?  $item + $final[$key] : $item;});

例舉array_walk_recursive()一般情況下

還有,因?yàn)?/trans>PHP 5.5您可以使用array_column()函數(shù)以實(shí)現(xiàn)所需的結(jié)果。準(zhǔn)確的鑰匙[gozhi],例如:

array_sum(array_column($input, 'gozhi'));

例舉array_column()用于指定的密鑰

如果您想要得到所有內(nèi)部數(shù)組的總和,則使用相同的鍵(你發(fā)布的預(yù)期結(jié)果),你可以這樣做(請(qǐng)記住,第一個(gè)內(nèi)部數(shù)組必須具有與其他數(shù)組相同的結(jié)構(gòu)。) :

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

例舉array_column()如果所有內(nèi)部數(shù)組都有相同的鍵

如果您想要一個(gè)通用的解決方案,使用array_column()然后,首先您可以考慮得到所有唯一的鍵,然后得到每個(gè)鍵的和:

$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);

例舉array_column()一般情況下


查看完整回答
反對(duì) 回復(fù) 2019-06-19
?
慕斯709654

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

下面是一個(gè)類似于另外兩個(gè)方案的解決方案:

$acc = array_shift($arr);foreach ($arr as $val) {
    foreach ($val as $key => $val) {
        $acc[$key] += $val;
    }}

但是這不需要檢查數(shù)組鍵是否已經(jīng)存在,也不需要拋出通知。


查看完整回答
反對(duì) 回復(fù) 2019-06-19
  • 3 回答
  • 0 關(guān)注
  • 1372 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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