php 读取文件头,php 读取文件头判断文件类型的实现代码

本文介绍了使用PHP通过读取文件头信息判断文件类型的实例,展示了如何利用`unpack`函数解析二进制数据,识别常见文件类型如.exe、.jpg等,并对比了Linux环境下`mime_content_type`函数的应用。
摘要由CSDN通过智能技术生成

案例:

//为图片的路径可以用d:/upload/11.jpg等绝对路径

$file = fopen($filename, "rb");

$bin = fread($file, 2); //只读2字节

fclose($file);

$strInfo = @unpack("C2chars", $bin);

$typeCode = intval($strInfo[‘chars1‘].$strInfo[‘chars2‘]);

$fileType = ‘‘;

switch ($typeCode) {

case 7790: $fileType = ‘exe‘; break;

case 7784: $fileType = ‘midi‘; break;

case 8297: $fileType = ‘rar‘; break;

case 255216: $fileType = ‘jpg‘; break;

case 7173: $fileType = ‘gif‘; break;

case 6677: $fileType = ‘bmp‘; break;

case 13780: $fileType = ‘png‘; break;

default: echo‘unknown‘;

}

echo‘这是一个‘.$fileType.‘ file:‘.$typeCode;

案例:

?>

//linux下php还有个函数可以判断文件类型

echo mime_content_type(‘11.gif‘) . "\n";

echo mime_content_type(‘22.php‘);

?>

原文:http://www.jb51.net/article/40304.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值