Документация для разработчиков
Темная тема

IsImage

Описание и параметры

string
CFile::IsImage(
	string file_name,
	mixed mime_type = false
)

Метод проверяет расширение и заданный MIME тип файла. Если расширение и MIME тип файла соответствуют изображению, то возвращает "true", иначе "false". Статический метод.

Параметры

ПараметрОписание
file_name Краткое имя файла (без пути).
mime_type MIME тип файла (например, "image/").
Необязательный. По умолчанию - "false" - проверку на MIME тип не делать.
До версии 4.0.4 назывался content_type.

Смотрите также

Примеры использования

<?
if ($rsFiles = CTicket::GetFileList($v1="s_id", $v2="asc", array("HASH"=>$hash))) :
	if ($arFile = $rsFiles->Fetch()) :
		$filename = $_SERVER["DOCUMENT_ROOT"]."/".COption::GetOptionString("main", "upload_dir", "upload")."/".$arFile["SUBDIR"]."/".$arFile["FILE_NAME"];
		if ($f = fopen($filename, "rb"))
		{
			$is_image = CFile::IsImage($arFile["FILE_NAME"], $arFile["CONTENT_TYPE"]);
			// если изображение то
			if ($is_image) 
			{
				// отдадим как изображение
				header("Content-type: ".$arFile["CONTENT_TYPE"]);
				header("Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0"); 
				header("Expires: 0"); 
				header("Pragma: public"); 
				while ($buffer = fread($f, 4096)) echo $buffer;
			}
			else // иначе
			{
				// отдадим как текст
				header("Content-type: text/html; charset=".LANG_CHARSET);
				header("Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0"); 
				header("Expires: 0"); 
				header("Pragma: public"); 
				echo "<pre>";
				while ($buffer = fread($f, 4096)) echo htmlspecialchars($buffer);
				echo "</pre>";
			}
			fclose ($f);
			die();
		}
	endif;
endif;
?>


© «Битрикс», 2001-2024, «1С-Битрикс», 2024