• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/cache_files_cleaner.php
  • Класс: CFileCacheCleaner
  • Вызов: CFileCacheCleaner::GetFileExpiration
function GetFileExpiration($FileName)
{
	if(preg_match('#^'.$_SERVER["DOCUMENT_ROOT"].BX_PERSONAL_ROOT.'/html_pages/.*\.html$#', $FileName))
	{
		return 1;//like an very old file
	}
	elseif(preg_match('#\.~\d+/#', $FileName)) //delayed delete files
	{
		return 1;//like an very old file
	}
	elseif(mb_substr($FileName, -4) == ".php")
	{
		$fd = fopen($FileName, "rb");
		if($fd)
		{
			$header = fread($fd, 150);
			fclose($fd);
			if(preg_match("/dateexpires*=s*'([d]+)'/im", $header, $match))
				return doubleval($match[1]);
		}
	}
	elseif(mb_substr($FileName, -5) == ".html")
	{
		$fd = fopen($FileName, "rb");
		if($fd)
		{
			$header = fread($fd, 26);
			fclose($fd);
			if(mb_substr($header, 0, 2) == "BX")
				return doubleval(mb_substr($header, 14, 12));
		}
	}
	return false;
}