php实现获取文件mime类型的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php获取文件mime类型的方法。分享给大家供大家参考。具体如下:

1.使用 mime_content_type 方法

string mime_content_type ( string $filename )

Returns the MIME content type for a file as determined by using information from the magic.mime file.  

<?php 
$mime_type = mime_content_type('1.jpg'); 
echo $mime_type; // image/jpeg 
?>

但此方法在 php5.3 以上就被废弃了,官方建议使用 fileinfo 方法代替。

2.使用 Fileinfo 方法 (官方推荐)

使用fileinfo需要安装php_fileinfo扩展。
如已安装可以在extension_dir目录下找到php_fileinfo.dll(windows),fileinfo.so(linux)
打开php.ini,把extension=php_fileinfo.dll前的";"去掉,然后重启apache。

<?php 
$fi = new finfo(FILEINFO_MIME_TYPE); 
$mime_type = $fi->file('1.jpg'); 
echo $mime_type; // image/jpeg 
?>

3.使用 image_type_to_mime_type 方法(只能处理图象类型)

使用exif_imagetype方法需要安装php_exif扩展,并需要安装php_mbstring扩展
如已安装可以在extension_dir目录下找到php_exif.dll(windows),exif.so(linux)
打开php.ini,把 extension=php_mbstring.dll, extension=php_exif.dll 前的","去掉,然后重启apache

<?php 
$image = exif_imagetype('1.jpg'); 
$mime_type = image_type_to_mime_type($image); 
echo $mime_type; // image/jpeg 
?>

Tips:如果使用文件名的后缀来判断,因为文件后缀是可以修改的,所以使用文件后缀来判断会不准确。

希望本文所述对大家的php程序设计有所帮助。

相关文章

php验证码生成器

现在很多网站都有实现用户集。然而为了防止机器人的网络攻击。限制登陆或者注册是有必要的。 在注册和登陆时强制要求输入一个机器难以识别的字符串集是一个不错的选择。虽然不能解决根本问题,但至...

php输出指定时间以前时间格式的方法

本文实例讲述了php输出指定时间以前时间格式的方法。分享给大家供大家参考。具体分析如下: 比如说你需要在php中输出3天前,20分钟以前,可以参考下面的代码 function ago...

PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT

PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT

PHP屏蔽蜘蛛访问代码代码: 常用搜索引擎名与 HTTP_USER_AGENT对应值 百度baiduspider 谷歌googlebot 搜狗sogou 腾讯SOSOsosospide...

php对文件进行hash运算的方法

本文实例讲述了php对文件进行hash运算的方法。分享给大家供大家参考。具体如下: 这段代码非常有用,如果你下载了一个文件,网站提供了hash结果,你可以对你下载下来的文件进行hash运...

PHP 将dataurl转成图片image方法总结

PHP 将dataurl转成图片image方法 使用canvas 生成的图片,是使用dataurl的,php无法直接通过file_put_contents方法保存到本地电脑,需要做一下转...