(PHP 4 >= 4.3.0, PHP 5, PHP 7)
exif_imagetype — Determine the type of an image
$filename
) : intexif_imagetype() reads the first bytes of an image and checks its signature.
exif_imagetype() can be used to avoid calls to other exif functions with unsupported file types or in conjunction with $_SERVER['HTTP_ACCEPT'] to check whether or not the viewer is able to see a specific image in the browser.
filename
When a correct signature is found, the appropriate constant value will be
returned otherwise the return value is FALSE
. The return value is the
same value that getimagesize() returns in index 2 but
exif_imagetype() is much faster.
Note:
exif_imagetype() will emit an
E_NOTICE
and returnFALSE
if it is unable to read enough bytes from the file to determine the image type.
Version | Description |
---|---|
7.1.0 | Added WebP support. |
5.3.0 | Added icon support. |
The following constants are defined, and represent possible exif_imagetype() return values:
Value | Constant |
---|---|
1 | IMAGETYPE_GIF |
2 | IMAGETYPE_JPEG |
3 | IMAGETYPE_PNG |
4 | IMAGETYPE_SWF |
5 | IMAGETYPE_PSD |
6 | IMAGETYPE_BMP |
7 | IMAGETYPE_TIFF_II (intel byte order) |
8 |
IMAGETYPE_TIFF_MM (motorola byte order)
|
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 |
Example #1 exif_imagetype() example
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'The picture is not a gif';
}
?>