您的位置:首页 > 其它

一个简单的文件后缀获取——不是通过文件名,而是文件内容

2010-11-09 19:05 489 查看
摘自原来的一个项目,特意提取出来,可能会有需要的人

/**
* 根据图片文件内容获取扩展名
* @param $file 要处理的文件
* @param $isstr 是否传的字符串:true=直接文件内容,false=文件地址
* @return unknown_type
*/
function get_img_ext($file = '', $isstr = true){
if(!$isstr){
//仅获取2字节
$file	=	file_get_contents($file, false, NULL, 0, 2);
}
//取文件前两个字节(二进制)
$bin	=	$file[0].$file[1];
//把2进制数转换为两个字符
$info	=	@unpack("C2chars", $bin);
//转换两个字节的字符为数字
$type	=	intval($info['chars1'].$info['chars2']);
$ext	=	'unknown';
//文件类型判断
switch($type){
case 7790:
$ext	=	'exe';
break;
case 7784:
$ext	=	'midi';
break;
case 8297:
$ext	=	'rar';
break;
case 255216:
$ext	=	'jpg';
break;
case 7173:
$ext	=	'gif';
break;
case 6677:
$ext	=	'bmp';
break;
case 13780:
$ext	=	'png';
break;
}
return $ext;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐