exif_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.
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.
The following constants are defined, and represent possible exif_imagetype() return values:
Table 1. Imagetype Constants
| 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 |