PHP 8.3.4 Released!

image_type_to_mime_type

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

image_type_to_mime_type取得 getimagesize、exif_read_data、exif_thumbnail、exif_imagetype 所返回的图像类型的 MIME 类型

说明

image_type_to_mime_type(int $image_type): string

image_type_to_mime_type() 函数将确定 IMAGETYPE 常量的 MIME 类型。

参数

image_type

IMAGETYPE_XXX 常量之一。

返回值

返回值如下:

返回值常量
image_type 返回值
IMAGETYPE_GIF image/gif
IMAGETYPE_JPEG image/jpeg
IMAGETYPE_PNG image/png
IMAGETYPE_SWF application/x-shockwave-flash
IMAGETYPE_PSD image/psd
IMAGETYPE_BMP image/bmp
IMAGETYPE_TIFF_II(小端字节顺序) image/tiff
IMAGETYPE_TIFF_MM(大端字节顺序) image/tiff
IMAGETYPE_JPC application/octet-stream
IMAGETYPE_JP2 image/jp2
IMAGETYPE_JPX application/octet-stream
IMAGETYPE_JB2 application/octet-stream
IMAGETYPE_SWC application/x-shockwave-flash
IMAGETYPE_IFF image/iff
IMAGETYPE_WBMP image/vnd.wap.wbmp
IMAGETYPE_XBM image/xbm
IMAGETYPE_ICO image/vnd.microsoft.icon
IMAGETYPE_WEBP image/webp
IMAGETYPE_AVIF image/avif

示例

示例 #1 image_type_to_mime_type() 示例

<?php
header
("Content-type: " . image_type_to_mime_type(IMAGETYPE_PNG));
?>

注释

注意:

此函数不需要 GD 图象库。

参见

add a note

User Contributed Notes 3 notes

up
13
slegersjohn at gmail dot com
10 years ago
If you are working with Images only and you need mime type (e.g. for headers), then this is a fast and reliable technique:

<?php
$file
= 'path/to/image.jpg';
$image_mime = image_type_to_mime_type(exif_imagetype($file));
?>

It will output true image mime type even if you rename your image file.
up
-8
benshelock at gmail dot com
15 years ago
I was looking to detect the format of images, Im not sure if this is the best way but it works for me.

<?php
$filename
= 'http://static.php.net/www.php.net/images/php.gif';
$size = getimagesize($filename);

switch (
$size['mime']) {
    case
"image/gif":
        echo
"Image is a gif";
        break;
    case
"image/jpeg":
        echo
"Image is a jpeg";
        break;
    case
"image/png":
        echo
"Image is a png";
        break;
    case
"image/bmp":
        echo
"Image is a bmp";
        break;
}
?>
up
-20
kissrat at gmail dot com
10 years ago
Map the image type enum to file extension:
$extensions = array(
    IMAGETYPE_GIF => "gif",
    IMAGETYPE_JPEG => "jpg",
    IMAGETYPE_PNG => "png",
    IMAGETYPE_SWF => "swf",
    IMAGETYPE_PSD => "psd",
    IMAGETYPE_BMP => "bmp",
    IMAGETYPE_TIFF_II => "tiff",
    IMAGETYPE_TIFF_MM => "tiff",
    IMAGETYPE_JPC => "jpc",
    IMAGETYPE_JP2 => "jp2",
    IMAGETYPE_JPX => "jpx",
    IMAGETYPE_JB2 => "jb2",
    IMAGETYPE_SWC => "swc",
    IMAGETYPE_IFF => "iff",
    IMAGETYPE_WBMP => "wbmp",
    IMAGETYPE_XBM => "xbm",
    IMAGETYPE_ICO => "ico"
);
To Top