(PHP 4 >= 4.3.0, PHP 5, PHP 7)
exif_imagetype — Определение типа изображения
$filename
) : intexif_imagetype() считывает начальные байты изображения и проверяет их сигнатуру.
exif_imagetype() может использоваться, чтобы избежать вызовов других exif-функций с неподдерживаемыми аргументами. Также при взаимодействии с $_SERVER['HTTP_ACCEPT'] можно проверять, будет ли изображение отображаться в браузере.
filename
Если корректная сигнатура обнаружена, функция вернет соответствующую типу
изображения константу. В противном случае функция вернет FALSE
. Возвращаемое
значение то же, что и во втором аргументе при возврате из функции
getimagesize(), однако exif_imagetype()
значительно быстрее.
Замечание:
В случаях, когда невозможно считать количество байтов из файла достаточное для определения типа изображения, функция exif_imagetype() вызовет предупреждение уровня
E_NOTICE
и вернетFALSE
.
Версия | Описание |
---|---|
7.1.0 | Добавлена поддержка WebP. |
5.3.0 | Добавлена поддержка иконок. |
Следующие определенные константы представляют возможные возвращаемые значения функции exif_imagetype():
Значение | Константа |
---|---|
1 | IMAGETYPE_GIF |
2 | IMAGETYPE_JPEG |
3 | IMAGETYPE_PNG |
4 | IMAGETYPE_SWF |
5 | IMAGETYPE_PSD |
6 | IMAGETYPE_BMP |
7 | IMAGETYPE_TIFF_II (порядок байт intel) |
8 |
IMAGETYPE_TIFF_MM (порядок байт motorola)
|
9 | IMAGETYPE_JPC |
10 | IMAGETYPE_JP2 |
11 | IMAGETYPE_JPX |
12 | IMAGETYPE_JB2 |
13 | IMAGETYPE_SWC |
14 | IMAGETYPE_IFF |
15 | IMAGETYPE_WBMP |
16 | IMAGETYPE_XBM |
17 | IMAGETYPE_ICO |
18 | IMAGETYPE_WEBP |
Пример #1 Пример использования exif_imagetype()
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'Картинка не gif';
}
?>