[英]Compare two multidimensional arrays and add the missings
我有兩個將產品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
)
)
我的第一個數組是已登錄用戶的購物籃。 其次是同一用戶尚未登錄。 當用戶登錄時,我必須強制使用這2個數組並將缺少的鍵添加到第一個數組中,但是如果兩個數組中都存在相同的鍵,則必須將第一個數組的_qty與第二個數組的_qty取整(例如:[1] => _qty為1第二個數組也有1個qty,因此使第一個qty = 2)。 或處理我想要的東西並創建第三個數組,我猜也是可能的。
如何做到這一點?
一個簡單的foreach
應該可以解決問題:
foreach ($second as $key => $value) {
if (isset($first[$key])) {
$first[$key]['_qty'] += $value['_qty'];
} else {
$first[$key] = $value;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.