(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
exif_imagetype — Determinar el tipo de una imagen
exif_imagetype() lee los primeros bytes de una imagen y verifica su firma.
exif_imagetype() puede usarse para evitar llamadas a otras funciones exif con tipos de fichero no soportados o en conjunto con $_SERVER['HTTP_ACCEPT'] para verificar si el visor es capaz de mostrar una imagen específica en el navegador.
filename
Cuando se encuentra una firma correcta, se devolverá el valor constante
apropiado; de lo contrario, se devolverá false. El valor devuelto es el
mismo que el que devuelve getimagesize() en el índice 2,
pero exif_imagetype() es mucho más rápido.
Se definen las siguientes constantes, que representan los posibles valores de retorno de exif_imagetype():
| Valor | Constante |
|---|---|
| 1 | IMAGETYPE_GIF |
| 2 | IMAGETYPE_JPEG |
| 3 | IMAGETYPE_PNG |
| 4 | IMAGETYPE_SWF |
| 5 | IMAGETYPE_PSD |
| 6 | IMAGETYPE_BMP |
| 7 | IMAGETYPE_TIFF_II (orden de bytes Intel) |
| 8 |
IMAGETYPE_TIFF_MM (orden de bytes 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 |
| 20 | IMAGETYPE_HEIF |
Nota: exif_imagetype() emitirá una
E_NOTICEy devolveráfalsesi no puede leer suficientes bytes del fichero para determinar el tipo de imagen.
| Versión | Descripción |
|---|---|
| 7.1.0 | Se añadió soporte para WebP. |
| 8.1.0 | Se añadió soporte para AVIF. |
| 8.5.0 | Se añadió soporte para HEIF. |
Ejemplo #1 Ejemplo de exif_imagetype()
<?php
if (exif_imagetype('image.gif') != IMAGETYPE_GIF) {
echo 'La imagen no es un gif';
}
?>