Помогите разобраться. Добавил в инфоблок 2 дополнительных поля и теперь надо их обработать. раньше обработчик выглядел вот так: Код (Text): $orderItemList = array(); $basketModel = new Deliverysushi\Models\Basket(); $basketContent = unserialize($order['BASKET_CONTENT']); $basketItems = $basketModel->getBasketContent($basketContent); foreach ($basketItems['products'] as $k => $bi) { if($bi['LOCAL_SUM'] == "" || $bi['LOCAL_SUM'] == "0") { continue; } $productBitrixItemProperty = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "ID_IIKO"))->fetch(); $productBitrixItemModifier = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "REQUIREDMODIFIERS"))->fetch(); $productBitrixItemModifierGroup = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "MODIFIERSGROUP"))->fetch(); $productBitrixItemModifierGroupName = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "MODIFIERSGROUPNAME"))->fetch(); $orderItem = new OrderItem(); $orderItem->id = $productBitrixItemProperty['VALUE']; $orderItem->amount = $bi['AMOUNT']; $orderItem->sum = str_replace(" ", "", $bi['LOCAL_SUM']); if($productBitrixItemModifier["VALUE"] != "" && $productBitrixItemModifierGroup["VALUE"] == "") { $orderItemModifierArray = array(); $orderItemModifier = new OrderItemModifier(); $orderItemModifier->id = $productBitrixItemModifier["VALUE"]; $orderItemModifier->amount = 1; array_push($orderItemModifierArray, $orderItemModifier); $orderItem->modifiers = $orderItemModifierArray; } else if($productBitrixItemModifier["VALUE"] != "" && $productBitrixItemModifierGroup["VALUE"] != "") { $orderItemModifierArray = array(); $orderItemModifier = new OrderItemModifierGroup(); $orderItemModifier->id = $productBitrixItemModifier["VALUE"]; $orderItemModifier->amount = 1; $orderItemModifier->groupId = $productBitrixItemModifierGroup["VALUE"]; $orderItemModifier->groupName = $productBitrixItemModifierGroupName["VALUE"]; array_push($orderItemModifierArray, $orderItemModifier); $orderItem->modifiers = $orderItemModifierArray; } //----------------------------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------------------------- array_push($orderItemList, $orderItem); } $orderIiko->items = $orderItemList; теперь после добавления 2 доп полей REQUIREDMODIFIERS2 и REQUIREDMODIFIERS3 добавил Код (Text): $productBitrixItemModifier2 = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "REQUIREDMODIFIERS2"))->fetch(); $productBitrixItemModifier3 = \CIBlockElement::GetProperty(self::PRODUCT_IBLOCK_ID, $bi[ID], array(), array("CODE" => "REQUIREDMODIFIERS3"))->fetch(); и в блок IF добавил Код (Text): $orderItemModifierArray = array(); $orderItemModifier = new OrderItemModifier(); $orderItemModifier->id = $productBitrixItemModifier2["VALUE"]; $orderItemModifier->amount = 1; $orderItemModifierArray = array(); $orderItemModifier = new OrderItemModifier(); $orderItemModifier->id = $productBitrixItemModifier3["VALUE"]; $orderItemModifier->amount = 1; как итог в результат падает только 3 поле. первые 2 он игнорирует если 2 и 3 не заполнять то в результат падает 1 поле. Как сделать чтобы при заполненных полях они падали в результат все заполненные а не последний? Понимаю что решение простое) Но я только начал в это вникать все(не программист совсем)