douda5227 2012-06-29 13:50
浏览 5
已采纳

如何通过检查另一个键的数组值的重复来总结一个键的数组值

Array
(
    [0] => Array
        (
            [linkId] => 1
            [clicksDate] => 1340856000
            [clicksCount] => 1
        )

    [1] => Array
        (
            [linkId] => 1
            [clicksDate] => 1340942400
            [clicksCount] => 2
        )

    [2] => Array
        (
            [linkId] => 1
            [clicksDate] => 1340942400
            [clicksCount] => 1
        )

    [3] => Array
        (
            [linkId] => 2
            [clicksDate] => 1340856000
            [clicksCount] => 2
        )

    [4] => Array
        (
            [linkId] => 2
            [clicksDate] => 1340942400
            [clicksCount] => 3
        )

    [5] => Array
        (
            [linkId] => 2
            [clicksDate] => 1340942400
            [clicksCount] => 1
        )

    [6] => Array
        (
            [linkId] => 3
            [clicksDate] => 1340856000
            [clicksCount] => 0
        )
}

Output :

Array(

    [0] => Array(  
       [clicksDate] => 1340856000,
       [clicksCount] => 3
     )

    [1] => Array(  
       [clicksDate] => 1340942400,
       [clicksCount] => 7
     )
)

The first array having two similar date , Based on the date repeatation , i need to sum the clicks count .Can any one help me to find simple solution?

  • 写回答

1条回答 默认 最新

  • duancuan6466 2012-06-29 14:01
    关注

    You could set the date to a key of an associative array, then sum the clicks as the value, like so:

    $result = array();
    foreach ($data as $value) {
        if (!isset($result[$value['clicksDate']])) {
            $result[$value['clicksDate']] = 0;
        }
        $result[$value['clicksDate']] += $value['clicksCount'];
    }
    var_dump($result);
    

    See it in action here: http://codepad.org/tJEBTobr

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?