esistema1 Опубликовано 15 января, 2018 Жалоба Поделиться Опубликовано 15 января, 2018 Всем здравствуйте. Есть вот такой цикл, в файле обмена с 1с, он выводит товары из заказов.Как можно посчитать кол-во товаров в заказе и вывести число? foreach($xml_order->Товары->Товар as $xml_product) { $purchase = null; // Id товара и варианта (если есть) по 1С $product_1c_id = $variant_1c_id = ''; @list($product_1c_id, $variant_1c_id) = explode('#', $xml_product->Ид); if(empty($product_1c_id)) $product_1c_id = ''; if(empty($variant_1c_id)) $variant_1c_id = ''; // Ищем товар $simpla->db->query('SELECT id FROM __products WHERE external_id=?', $product_1c_id); $product_id = $simpla->db->result('id'); $simpla->db->query('SELECT id FROM __variants WHERE external_id=? AND product_id=?', $variant_1c_id, $product_id); $variant_id = $simpla->db->result('id'); $purchase = new stdClass; $purchase->order_id = $order->id; $purchase->product_id = $product_id; $purchase->variant_id = $variant_id; $purchase->sku = $xml_product->Артикул; $purchase->product_name = $xml_product->Наименование; $purchase->amount = $xml_product->Количество; $purchase->price = floatval($xml_product->ЦенаЗаЕдиницу); if(isset($xml_product->Скидки->Скидка)) { $discount = $xml_product->Скидки->Скидка->Процент; $purchase->price = $purchase->price*(100-$discount)/100; } $simpla->db->query('SELECT id FROM __purchases WHERE order_id=? AND product_id=? AND variant_id=?', $order->id, $product_id, $variant_id); $purchase_id = $simpla->db->result('id'); if(!empty($purchase_id)) $purchase_id = $simpla->orders->update_purchase($purchase_id, $purchase); else $purchase_id = $simpla->orders->add_purchase($purchase); $purchases_ids[] = $purchase_id; } Цитата Ссылка на сообщение Поделиться на другие сайты
esistema1 Опубликовано 15 января, 2018 Автор Жалоба Поделиться Опубликовано 15 января, 2018 Разобрался, можно закрывать.Перед foreach $counter = 0; В конце foreach (внутри) $counter++;Далее выводим в любое место переменную $counter Цитата Ссылка на сообщение Поделиться на другие сайты
mishanya Опубликовано 15 января, 2018 Жалоба Поделиться Опубликовано 15 января, 2018 (изменено) Разобрался, можно закрывать. Перед foreach $counter = 0; В конце foreach (внутри) $counter++;Далее выводим в любое место переменную $counter можно просто count($xml_order->Товары->Товар); без циклов Изменено 15 января, 2018 пользователем mishanya Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.