鍍金池/ 問答/PHP/ 請教下PHP數(shù)組求和的方法

請教下PHP數(shù)組求和的方法

首先上數(shù)組

Array
(
    [0] => Array
        (
            [tid] => 12
            [aid] => 1
            [openid] => oWWUP0dieOLSHl3CzjyHIcIsadhtVo
            [nickname] => 帥鍋你好帥
            [sales] => 
            [team_name] => 帥
            [team_slogan] => 酷
            [title] => 測試活動
            [new] => Array
                (
                    [0] => Array
                        (
                            [id] => 1
                            [openid] => oWWUP0dieOLSHl3CzjyHIcIsadhtVo
                            [nickname] => 帥鍋你好帥
                            [tid] => 12
                            [cre_time] => 1512704950
                            [aid] => 0
                            [sales] => 12
                        )

                    [1] => Array
                        (
                            [id] => 3
                            [openid] => oWWUP0UXRfKKA6imX_X-6OU7OKv0
                            [nickname] => landy
                            [tid] => 12
                            [cre_time] => 1512704975
                            [aid] => 0
                            [sales] => 54
                        )

                )

        )

    [1] => Array
        (
            [tid] => 13
            [aid] => 2
            [openid] => oWWUP0dieOLSHl3CzjyHIcIsadhtVo
            [nickname] => 帥鍋你好帥
            [sales] => 
            [team_name] => 帥
            [team_slogan] => 酷
            [title] => 測按時
            [new] => Array
                (
                    [0] => Array
                        (
                            [id] => 2
                            [openid] => oWWUP0dieOLSHl3CzjyHIcIsadhtVo
                            [nickname] => 帥鍋你好帥
                            [tid] => 13
                            [cre_time] => 1512704970
                            [aid] => 2
                            [sales] => 24
                        )

                )

        )

)
我想計算    

[0][new][sales]的總和
[1][new][sales]的總和

我不知道數(shù)組到底會有多大的....所以.....

我就知道我需要..new 下    tid 相同的話,sales 求和


求大家?guī)蛶兔Π?~~我菜鳥...

?!

回答
編輯回答
初心

求和還是 直接查詢時候 通過數(shù)據(jù)庫求和吧

2018年8月2日 06:07
編輯回答
青裙
$tmp = [];
foreach ($arr as $value) {
    foreach ($value['new'] as $val) {
        if (isset($tmp[$val['tid']]) && !empty($tmp[$val['tid']])) {
            $tmp[$val['tid']] += $val['sales'];
        } else {
            $tmp[$val['tid']] = $val['sales'];
        }
    }
}

一般的寫法是這樣,計算tid相同的sales的和:以tid的值為鍵,以tid相同的sales的總和為值

2017年8月15日 06:43
編輯回答
爛人
foreach ($data as $key => $value) {
  $data[$key]['sum'] = array_sum(array_column($value['new'], 'sales'));
}

不知道是不是你要的結(jié)果,其實這種直接通過數(shù)據(jù)庫查詢更好計算吧

2017年10月1日 11:39