Здравствуйте.
Возникла проблема следующего характера.
Необходимо создать 35 000 элементов инфоблока из файла. Скрипт я написал, вот листинг того, что отвечает за добавление элементов:
Ничего необычного, и на локальном веб-сервере все в порядке, но работает минут 25-30. Как бы сделать так чтобы работало меньше хотя бы формально(шаги например)?
ЗЫ. этот скрипт будет запускаться не пользователем, а автоматически.
Возникла проблема следующего характера.
Необходимо создать 35 000 элементов инфоблока из файла. Скрипт я написал, вот листинг того, что отвечает за добавление элементов:
| Код |
|---|
$rsSections = $sect_obj->GetList(array('ID'=>'ASC'), array('IBLOCK_ID'=>MAIN_CATALOG_IBLOCK_ID));
while($arSect = $rsSections->Fetch()) $arSectCodeID[$arSect['CODE']] = $arSect['ID'];
foreach($arVals as $arItem){
$arFields = array(
'IBLOCK_ID' => MAIN_CATALOG_IBLOCK_ID,
'IBLOCK_SECTION_ID' => $arSectCodeID[$arItem['PARENT']],
'NAME' => $arItem['NAME'],
'CODE' => $arItem['CODE'],
'PROPERTY_VALUES' => array(
'ART' =>$arItem['ART'],
'STORAGE' =>$arItem['STORAGE']
),
);
$new_item_id = $elem_obj->Add($arFields);
if(!$new_item_id) echo('<p>'.$elem_obj->LAST_ERROR.' - '.print_r($arFields,1).'</p>');
} |
Ничего необычного, и на локальном веб-сервере все в порядке, но работает минут 25-30. Как бы сделать так чтобы работало меньше хотя бы формально(шаги например)?
ЗЫ. этот скрипт будет запускаться не пользователем, а автоматически.