2016-11-29 66 views
-2

我如何總結多維數組並保留字段並添加總和字段。我想總結一下實地計數。php總數並保留多維數組

數組是這樣的:

Array (
[0] => Array 
    (
     [landingpage_id] => 5305bc90b7a6bb56478b4581 
     [offer_id] => 9233440331d06b1f22dadb1641007585 
     [count] => 5 
    ) 

[2] => Array 
    (

     [landingpage_id] => 5305bc90b7a6bb56478b4581 
     [offer_id] => 53146a8bb7a6bb9b688b4567 
     [count] => 3 
    ) 

[4] => Array 
    (
     [landingpage_id] => 5305bc90b7a6bb56478b4581 
     [offer_id] => 53146a8bb7a6bb9b688b4567 
     [count] => 2 
    ) 
) 

理想的結果會是這樣,因爲它總結了數區域具有獨特的COM:

[0] => Array 
    (
     [landingpage_id] => 5305bc90b7a6bb56478b4581 
     [offer_id] => 9233440331d06b1f22dadb1641007585 

     [count] => 5 
    ) 



[1] => Array 
    (
     [landingpage_id] => 5305bc90b7a6bb56478b4581 
       [offer_id] => 53146a8bb7a6bb9b688b4567 

     [count] => 5 
    ) 
+0

預期結果是什麼? –

+0

抱歉正在修復這個問題。我一直斷線。 – Boy

回答

0

您可以使用array_reduce

$result = array_reduce($myArray, function ($carry, $item) { 

    $key = $item['landingpage_id'] . $item['offer_id']; 

    if (isset($carry[$key])) { 
     $carry[$key]['count'] += $item['count']; 
    } else { 
     $carry[$key] = $item; 
    } 

    return $carry; 

}, array()); 

$result = array_values($result); // this is needed only if you want to reset the keys of the resulted array 
+0

由於某種原因,這個輸出,幾乎與參數 – Boy

+0

相同你是什麼意思? –