PHP判断上传文件类型的解决办法
编程学习 2021-07-05 09:09www.dzhlxh.cn编程入门
php通过判断上传文件的头字符来判断文件的类型,这可以称得上是最安全,最真实确定上传文件类型的方法了,具体实现方法如下
分享给大家php判断上传文件类型的方法,大家一起学习学习。
/** * 读取文件前几个字节 判断文件类型 * @return String */ function checkTitle($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){ 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: $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程序设计有所帮助。
上一篇:php文件上传你必须知道的几点
下一篇:php上传大文件失败的原因及应对策略