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代码规范、流程规范、git规范

代码规范、git规范、teambition规范、yii规范 1. 命名规范 (1).变量命名规范 1.变量使用驼峰命名法 禁止使用拼音或者拼音加数字 2.变量也应具有描述性,杜绝一切...

Discuz5.5.0代码高亮显示+运行代码框合成插件 下载第1/4页

主要功能: 1.几乎支持所有程序代码的高亮显示,包括以下语言:Actionscript、ADA、Apache Log、AppleScript、ASM、ASP、AutoIT、Ba...

PHP警告Cannot use a scalar value as an array的解决方法

看到php的错误日志里有些这样的提示: [27-Aug-2011 22:26:12] PHP Warning: Cannot use a scalar value as an array...

实例讲解通过&#8203;PHP创建数据库

实例讲解通过&#8203;PHP创建数据库

数据库是相互关联的数据的集合,我们可以从数据库中有效地检索,插入和删除数据,并以表格,视图,模式等形式组织数据。今天将要介绍如何通过PHP来创建MySQL数据库 PHP创建MySQL数据...

基于PHP array数组的教程详解

定义数组数组array是一组有序的变量,其中每个变量被叫做一个元素。一、定义数组 可以用 array() 语言结构来新建一个数组。它接受一定数量用逗号分隔的 key => valu...