Я создаю функцию, которая делает вызов с API для БД и возвращает мне данные JSON. JSON содержит заказы, и я уже декодировал их в массиве php. Каждый заказ имеет такие свойства, как «product_id» и «количество». Я хочу временно сохранить свойство «количество» где-нибудь, потому что мне нужно объединить все продукты с одинаковым product_id. Любое предложение, как это сделать?
Я немного спешу, но хотел посмотреть, смогу ли я вам помочь.
$quantities = [];
//Loop through all the orders
foreach ($orders as $order) {
//Loop through the orderrows
foreach ($order->getOrderRows() as $orderRow) {
if (array_key_exists($orderRow->getProductName(), $quantities)) {
//The product is already in the quantities array, so the quantity of this orderrow is added to the total
$quantities[$orderRow->getProductName()] =
($quantities[$orderRow->getProductName()] + (int) $orderRow->getItemQuantity());
} else {
//If this is the first time the product is encountered add the product and its quantity to the quantities array
$quantities[$orderRow->getProductName()] = (int) $orderRow->getItemQuantity();
}
}
}
Это будет иметь следующий результат, показывая вам названия продуктов вместе с их количеством:
$quantities = [
'foo' => 12,
'bar' => 3,
];
Вы можете использовать переменную сеанса для хранения этих значений.