好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php获取上传文件类型 获取文件后缀 - php上传下载

php获取上传文件类型 获取文件后缀

本教程提供了三款获取上传文件与图片类型的方法,方法也是很简单的前二种,是先把类型定义好,再用in_array判断,最后一步是利用了fopen再读取前二个字节,判断.

代码如下:

//获得图片的格式,包括jpg,png,gif   function  get_type( $img_name ) //获取图像文件类型   {    if  (preg_match( "/.(jpg|jpeg|gif|png|bmp)$/i" ,  $img_name ,  $matches )){     $type  =  strtolower ( $matches [1]);   } else {     $type  =  "string" ;   }    return   $type ;  }    //判断上传文件类型   $allowedextensions  =  array ( "txt" , "csv" , "htm" , "html" , "xml" ,          "css教程" , "doc" , "xls" , "rtf" , "ppt" , "pdf" , "swf" , "flv" , "avi" ,          "wmv" , "mov" , "jpg" , "jpeg" , "gif" , "png" );           foreach  ( $_files   as   $file ) {          if  ( $file [ 'tmp_name' ] >  '' ) {            if  (!in_array( end ( explode ( "." ,                  strtolower ( $file [ 'name' ]))),                  $allowedextensions )) {             die ( $file [ 'name' ]. ' is an invalid file type!<br/>' .              '<a href="网页特效:history.go(-1);">' .              '&lt;&lt go back</a>' );           }     }     }      //另类的读取文件与图片类型     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 ;  }  //fix   if  ( $strinfo [ 'chars1' ]== '-1'  &&  $strinfo [ 'chars2' ]== '-40'  ) {  return   'jpg' ;  }  if  ( $strinfo [ 'chars1' ]== '-119'  &&  $strinfo [ 'chars2' ]== '80'  ) {  return   'png' ;  }  return   $filetype ;  }  ?> 

查看更多关于php获取上传文件类型 获取文件后缀 - php上传下载的详细内容...

  阅读:72次