如何按值对数组求和?

如何按值对这个数组求和?只需将 [jumlah] 组的值与 [Kondisi] 相加即可。


Array 

[0] => stdClass Object 

    ( 

        [Kondisi] => one

        [jumlah] => 2

    ) 

[1] => stdClass Object 

    ( 

        [Kondisi] => two 

        [jumlah] => 3

    ) 

[2] => stdClass Object 

    ( 

        [Kondisi] => three

        [jumlah] => 4

    ) 

[3] => stdClass Object 

    ( 

        [Kondisi] => one

        [jumlah] => 3

    ) 

[4] => stdClass Object 

    ( 

        [Kondisi] => two

        [jumlah] => 1

    ) 

[5] => stdClass Object 

    ( 

        [Kondisi] => three

        [jumlah] => 3

    ) 

)

我尝试过如何对多维数组中的所有列值求和?,但没有帮助。


我想要这样的输出:


Array 

[0] => stdClass Object 

    ( 

        [Kondisi] => one 

        [jumlah] => 5

    ) 

[1] => stdClass Object 

    ( 

        [Kondisi] => two

        [jumlah] => 4

    ) 

[2] => stdClass Object 

    ( 

        [Kondisi] => three

        [jumlah] => 7

    ) 


摇曳的蔷薇
浏览 150回答 1
1回答

料青山看我应如是

示例代码可以是:$sums = [];// `$objects` is your initial array foreach ($objects as $object) {    // here we check if key `$object->Kondisi` exists in `$sums` array    if (empty($sums[$object->Kondisi])) {        // if `no` - this is new object, store it as is        $sums[$object->Kondisi] = $object;    } else {        // if `yes` - add `jumlah` value to existing `jumlah` property        $sums[$object->Kondisi]->jumlah += $object->jumlah;    }}// use `array_values` to get 0-indexed arrayprint_r(array_values($sums));
打开App,查看更多内容
随时随地看视频慕课网APP