2014-02-18 58 views
0

我有兩個數組,其中存儲有作爲關鍵字的產品ID。比較兩個多維數組並添加錯誤

第一陣列是這樣:

Array 
(
    [1] => Array 
    (
     [_sku] => 
     [_qty] => 1 
    ) 
    [34] => Array 
    (
     [_sku] => 
     [_qty] => 3 
    ) 
    [23] => Array 
    (
     [_sku] => 
     [_qty] => 1 
    ) 
) 

第二個數組是這樣:

Array 
(
    [1] => Array 
    (
     [_sku] => 
     [_qty] => 1 
    ) 
    [54] => Array 
    (
     [_sku] => 
     [_qty] => 1 
    ) 
) 

我的第一個數組是登錄用戶的籃子裏。其次是同一用戶沒有登錄籃子。當用戶登錄時,我必須主持這兩個數組,並將缺失的鍵添加到第一個數組,但如果兩個數組中存在相同的鍵,我必須用第二個_qty(例如:[1] => _qty爲1第二個數組也有1個數,所以第一個數= 2)。或者處理我想要的並創建第三個數組,我猜也是可能的。

如何實現這個?

回答

1

一個簡單foreach應該做的伎倆:

foreach ($second as $key => $value) { 
    if (isset($first[$key])) { 
     $first[$key]['_qty'] += $value['_qty']; 
    } else { 
     $first[$key] = $value; 
    } 
} 
+0

你先生完全救了我。我現在無法接受你的回答,但我會在9分鐘內:) –