- Модуль: landing
- Путь к файлу: ~/bitrix/modules/landing/lib/file.php
- Класс: BitrixLandingFile
- Вызов: File::deleteFinal
static function deleteFinal($limit = null)
{
$deletedFiles = [];
$res = FileTable::getList([
'select' => [
'ID', 'FILE_ID'
],
'filter' => [
' 0
],
'limit' => $limit,
'order' => [
'ID' => 'asc'
]
]);
while ($row = $res->fetch())
{
$row['FILE_ID'] *= -1;
FileTable::delete($row['ID']);
$deletedFiles[$row['FILE_ID']] = $row['FILE_ID'];
}
if (!empty($deletedFiles))
{
// don't delete still used
$res = FileTable::getList([
'select' => [
'FILE_ID'
],
'filter' => [
'FILE_ID' => $deletedFiles
]
]);
while ($row = $res->fetch())
{
unset($deletedFiles[$row['FILE_ID']]);
}
foreach ($deletedFiles as $fid)
{
$fileData = self::getFileArray($fid);
if ($fileData)
{
//@tmp log
Debug::log(
$fileData['SRC'],
'fileId: ' . $fid,
'LANDING_FILE_DELETE'
);
CFile::delete($fid);
}
}
}
}