首页 > 开发 > PHP > 正文

PHP判断上传文件类型的解决办法

2024-05-04 23:39:39
字体:
来源:转载
供稿:网友

php通过判断上传文件的头字符来判断文件的类型,这可以称得上是最安全,最真实确定上传文件类型的方法了,具体实现方法如下

分享给大家php判断上传文件类型的方法,大家一起学习学习。

 

 
  1. /**  
  2. * 读取文件前几个字节 判断文件类型  
  3. * @return String  
  4. */ 
  5. function checkTitle($filename){  
  6. $file=fopen($filename, "rb");  
  7. $bin=fread($file, 2); //只读2字节  
  8. fclose($file);  
  9. $strInfo =@unpack("c2chars", $bin);  
  10. $typeCode=intval($strInfo['chars1'].$strInfo['chars2']);  
  11. $fileType='';  
  12. switch($typeCode){  
  13. case 7790:  
  14. $fileType='exe';  
  15. break;  
  16. case 7784:  
  17. $fileType='midi';  
  18. break;  
  19. case 8297:  
  20. $fileType='rar';  
  21. break;  
  22. case 255216:  
  23. $fileType='jpg';  
  24. break;  
  25. case 7173:  
  26. $fileType='gif';  
  27. break;  
  28. case 6677:  
  29. $fileType='bmp';  
  30. break;  
  31. case 13780:  
  32. $fileType='png';  
  33. break;  
  34. default:  
  35. $fileType='unknown'.$typeCode;  
  36. break;  
  37. }  
  38. //Fix  
  39. if($strInfo['chars1']=='-1' && $strInfo['chars2']=='-40'){  
  40. return 'jpg';  
  41. }  
  42. if($strInfo['chars1']=='-119' && $strInfo['chars2']=='80'){  
  43. return 'png';  
  44. }  
  45. return $fileType;  

希望通过本文对大家学习php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表