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

6年以前  |  阅读数:886 次  |  编程语言: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程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8