У меня есть два ассоциативных массива, которые имеют много контента, и поэтому я хочу объединить эти два массива таким образом, что если у меня есть a
в массиве 1 и a
в массиве 2, чем в массиве 3, я должен иметь записи для a's
, а не 1.
Я попытался использовать array_merge, но он перезаписывал записи в 1-м массиве, если в 2-м массиве есть дубликаты, я также попытался использовать +
, но он дает мне фатальную ошибку, говоря Fatal error: Unsupported operand types in /home/code.php
, тогда я попытался сделать
(array)$ar3 = (array)$ar1 +(array)$ar2
и, похоже, он складывается. Я хочу знать, что это правильный способ сделать это, а также почему вначале я получил фатальную ошибку и чем это сработало, поскольку я уже определил типы $ar3, $ar2, $ar1 как типы массивов.
$orders = new Order();
$prospectOffers = $orders->getOrder($orderConfNumber);
$prospectOffersResult = json_decode($prospectOffers,true);
$shoppingBasket = $cart->getCartItems();
var_dump($prospectOffersResult); // Both are arrays
var_dump($shoppingBasket); //Both are arrays
(array)$result = (array)$prospectOffersResult+(array)$shoppingBasket;
Спасибо.