2021-03-11 php 获取文件/上传文 是否是图片格式(与后缀无关,取文件实际内容)

本文介绍了如何使用PHP的exif_imagetype()函数来判断文件类型是否为图片及具体的图片格式。需要通过特定配置启用exif支持,并正确设置扩展加载顺序。文章提供了示例代码说明函数的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考: https://www.php.net/manual/zh/function.exif-imagetype.php

前提:

1、使用 --enable-exif 选项 配置 PHP 来启用 exif 支持。

1.1、Windows 用户必须在 php.ini 中启用 php_mbstring.dll 和 php_exif.dll 扩展。 请确保在 php.ini 中保持正确的顺序: php_mbstring.dll 必须在 php_exif.dll 之前 加载。

 

代码:


$a = exif_imagetype('ppt_to_jpg.jpg');//ppt_to_jpg   文件为.ppt手改jpg
var_dump($a);//false 不是图片格式

$b = exif_imagetype('jpg_to_png.png');//jpg to png  文件为.jpg手改png
var_dump($b);//int 2    IMAGETYPE_JPEG

$c = exif_imagetype('png_to_jpg.jpg');//png_to_jpg   文件为.png手改jpg
var_dump($c);//int 3   IMAGETYPE_PNG


// 1    IMAGETYPE_GIF
// 2    IMAGETYPE_JPEG
// 3    IMAGETYPE_PNG
// 4    IMAGETYPE_SWF
// 5    IMAGETYPE_PSD
// 6    IMAGETYPE_BMP
// 7    IMAGETYPE_TIFF_II(Intel 字节顺序)
// 8    IMAGETYPE_TIFF_MM(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

注意:

用$_FILES['XX']['tmp_name']作为参数也可以
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值