Реализую импорт в инфоблок нескольких тысяч элементов.
Пытаюсь использовать Bitrix ORM -
ElementTable::add();
выводит:
Для добавления элементов инфоблоков используйте вызов CIBlockElement::Add().
Понимаю, что можно избавиться от метода
add()
, который переопредляется в
ElementTable (
выводит ошибку) и работать средствами D7 с таблицами инфоблока
bitrix/modules/iblock/lib/element.php
. Но ведь почему-то разработчики Битрикса решили от него отказаться? Выходит нужно использовать старый
CIBlockElement::Add()
без вариантов?
Как реализовать импорт по шагам? Есть какой-то аналог
Batch Processing от Doctrine?
Короче говоря, как оптимизировать это:
foreach ($itemArray as $item) {
CIBlockElement::Add($item, false, false, false);
}