文字

image_type_to_mime_type

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

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

说明

string image_type_to_mime_type ( int $imagetype )

image_type_to_mime_type() 函数可以判断一个 IMAGETYPE 常量的 MIME 类型。

Example #1 image_type_to_mime_type (file)

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

返回值如下:

返回值常量
图像类型(imagetype 返回值
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 (intel byte order) image/tiff
IMAGETYPE_TIFF_MM (motorola byte order) 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

Note: 本函数不需要 GD 库。

参见 getimagesize() exif_imagetype() exif_read_data() exif_thumbnail()

用户评论:

[#1] slegersjohn at gmail dot com [2014-03-06 16:39:06]

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.

[#2] kissrat at gmail dot com [2013-10-10 05:06:16]

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"
);

[#3] benshelock at gmail dot com [2009-03-09 11:08:17]

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;
}
?>

上一篇: 下一篇: