略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: image_type_to_mime_type

2024-11-15

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 $imagetype): string

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

示例 #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

注意: 本函数不需要 GD 库。

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

add a noteadd a note

User Contributed Notes 3 notes

up
15
slegersjohn at gmail dot com
8 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
-10
benshelock at gmail dot com
13 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
-22
kissrat at gmail dot com
8 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"
);

官方地址:https://www.php.net/manual/en/function.image-type-to-mime-type.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3