array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.exif-imagetype.php', 1 => 'exif_imagetype', ), 'up' => array ( 0 => 'ref.exif.php', 1 => 'Exif Функции', ), 'prev' => array ( 0 => 'ref.exif.php', 1 => 'Exif Функции', ), 'next' => array ( 0 => 'function.exif-read-data.php', 1 => 'exif_read_data', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/exif/functions/exif-imagetype.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
exif_imagetype — Determine the type of an image
exif_imagetype() считывает начальные байты изображения и проверяет их сигнатуру.
exif_imagetype() может использоваться, чтобы избежать вызовов других exif-функций с неподдерживаемыми аргументами. Также при взаимодействии с $_SERVER['HTTP_ACCEPT'] можно проверять, будет ли изображение отображаться в браузере.
filename
Если корректная сигнатура обнаружена, функция вернёт соответствующую типу
изображения константу. В противном случае функция вернёт false
. Возвращаемое
значение то же, что и во втором аргументе при возврате из функции
getimagesize(), однако exif_imagetype()
значительно быстрее.
Следующие определённые константы представляют возможные возвращаемые значения функции 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 |
19 | IMAGETYPE_AVIF |
Замечание:
В случаях, когда невозможно считать количество байтов из файла достаточное для определения типа изображения, функция exif_imagetype() вызовет предупреждение уровня
E_NOTICE
и вернётfalse
.
Версия | Описание |
---|---|
8.1.0 | Добавлена поддержка AVIF. |
7.1.0 | Добавлена поддержка WebP. |
Пример #1 Пример использования exif_imagetype()
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'Картинка не gif';
}
?>