CModule::IncludeModule('iblock');
$el = new CIBlockElement;
$arSelect = Array("ID", "IBLOCK_ID", "NAME", "PREVIEW_PICTURE");
$arFilter = Array("IBLOCK_ID"=>10, "!PREVIEW_PICTURE"=>false);
//выбираем по 5000 элементов, чтобы сервер не офигел, меняем номер iNumPage от 1 до нужного количества
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>5000,"iNumPage"=>2), $arSelect);
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
$arFile = CFile::GetFileArray($arFields["PREVIEW_PICTURE"]);
$src = $_SERVER["DOCUMENT_ROOT"] . $arFile["SRC"];
if($arFile && (!file_exists($src) )){
echo $arFields["ID"]."<br>";
$el->Update($arFields["ID"], array("PREVIEW_PICTURE"=>array('del' => 'Y'),"DETAIL_PICTURE"=>array('del' => 'Y')));
}
}
|