PHP判断上传文件类型的解决办法
分享给大家php判断上传文件类型的方法,大家一起学习学习。
/**
*读取文件前几个字节判断文件类型
*@returnString
*/
functioncheckTitle($filename){
$file=fopen($filename,"rb");
$bin=fread($file,2);//只读2字节
fclose($file);
$strInfo=@unpack("c2chars",$bin);
$typeCode=intval($strInfo['chars1'].$strInfo['chars2']);
$fileType='';
switch($typeCode){
case7790:
$fileType='exe';
break;
case7784:
$fileType='midi';
break;
case8297:
$fileType='rar';
break;
case255216:
$fileType='jpg';
break;
case7173:
$fileType='gif';
break;
case6677:
$fileType='bmp';
break;
case13780:
$fileType='png';
break;
default:
$fileType='unknown'.$typeCode;
break;
}
//Fix
if($strInfo['chars1']=='-1'&&$strInfo['chars2']=='-40'){
return'jpg';
}
if($strInfo['chars1']=='-119'&&$strInfo['chars2']=='80'){
return'png';
}
return$fileType;
}
希望通过本文对大家学习php程序设计有所帮助。