PHP獲得文件的mime type類型

程序猿123 9年前發布 | 1K 次閱讀 PHP

<?php
/**

  • 獲得文件的mime type類型
  • @author xiaobing.meng / class MimeTypes { public static $mime_types = array (

         'apk' => 'application/vnd.android.package-archive',
         '3gp' => 'video/3gpp', 
         'ai' => 'application/postscript', 
         'aif' => 'audio/x-aiff', 
         'aifc' => 'audio/x-aiff', 
         'aiff' => 'audio/x-aiff', 
         'asc' => 'text/plain', 
         'atom' => 'application/atom+xml', 
         'au' => 'audio/basic', 
         'avi' => 'video/x-msvideo', 
         'bcpio' => 'application/x-bcpio', 
         'bin' => 'application/octet-stream', 
         'bmp' => 'image/bmp', 
         'cdf' => 'application/x-netcdf', 
         'cgm' => 'image/cgm', 
         'class' => 'application/octet-stream', 
         'cpio' => 'application/x-cpio', 
         'cpt' => 'application/mac-compactpro', 
         'csh' => 'application/x-csh', 
         'css' => 'text/css', 
         'dcr' => 'application/x-director', 
         'dif' => 'video/x-dv', 
         'dir' => 'application/x-director', 
         'djv' => 'image/vnd.djvu', 
         'djvu' => 'image/vnd.djvu', 
         'dll' => 'application/octet-stream', 
         'dmg' => 'application/octet-stream', 
         'dms' => 'application/octet-stream', 
         'doc' => 'application/msword', 
         'dtd' => 'application/xml-dtd', 
         'dv' => 'video/x-dv', 
         'dvi' => 'application/x-dvi', 
         'dxr' => 'application/x-director', 
         'eps' => 'application/postscript', 
         'etx' => 'text/x-setext', 
         'exe' => 'application/octet-stream', 
         'ez' => 'application/andrew-inset', 
         'flv' => 'video/x-flv', 
         'gif' => 'image/gif', 
         'gram' => 'application/srgs', 
         'grxml' => 'application/srgs+xml', 
         'gtar' => 'application/x-gtar', 
         'gz' => 'application/x-gzip', 
         'hdf' => 'application/x-hdf', 
         'hqx' => 'application/mac-binhex40', 
         'htm' => 'text/html', 
         'html' => 'text/html', 
         'ice' => 'x-conference/x-cooltalk', 
         'ico' => 'image/x-icon', 
         'ics' => 'text/calendar', 
         'ief' => 'image/ief', 
         'ifb' => 'text/calendar', 
         'iges' => 'model/iges', 
         'igs' => 'model/iges', 
         'jnlp' => 'application/x-java-jnlp-file', 
         'jp2' => 'image/jp2', 
         'jpe' => 'image/jpeg', 
         'jpeg' => 'image/jpeg', 
         'jpg' => 'image/jpeg', 
         'js' => 'application/x-javascript', 
         'kar' => 'audio/midi', 
         'latex' => 'application/x-latex', 
         'lha' => 'application/octet-stream', 
         'lzh' => 'application/octet-stream', 
         'm3u' => 'audio/x-mpegurl', 
         'm4a' => 'audio/mp4a-latm', 
         'm4p' => 'audio/mp4a-latm', 
         'm4u' => 'video/vnd.mpegurl', 
         'm4v' => 'video/x-m4v', 
         'mac' => 'image/x-macpaint', 
         'man' => 'application/x-troff-man', 
         'mathml' => 'application/mathml+xml', 
         'me' => 'application/x-troff-me', 
         'mesh' => 'model/mesh', 
         'mid' => 'audio/midi', 
         'midi' => 'audio/midi', 
         'mif' => 'application/vnd.mif', 
         'mov' => 'video/quicktime', 
         'movie' => 'video/x-sgi-movie', 
         'mp2' => 'audio/mpeg', 
         'mp3' => 'audio/mpeg', 
         'mp4' => 'video/mp4', 
         'mpe' => 'video/mpeg', 
         'mpeg' => 'video/mpeg', 
         'mpg' => 'video/mpeg', 
         'mpga' => 'audio/mpeg', 
         'ms' => 'application/x-troff-ms', 
         'msh' => 'model/mesh', 
         'mxu' => 'video/vnd.mpegurl', 
         'nc' => 'application/x-netcdf', 
         'oda' => 'application/oda', 
         'ogg' => 'application/ogg', 
         'ogv' => 'video/ogv', 
         'pbm' => 'image/x-portable-bitmap', 
         'pct' => 'image/pict', 
         'pdb' => 'chemical/x-pdb', 
         'pdf' => 'application/pdf', 
         'pgm' => 'image/x-portable-graymap', 
         'pgn' => 'application/x-chess-pgn', 
         'pic' => 'image/pict', 
         'pict' => 'image/pict', 
         'png' => 'image/png', 
         'pnm' => 'image/x-portable-anymap', 
         'pnt' => 'image/x-macpaint', 
         'pntg' => 'image/x-macpaint', 
         'ppm' => 'image/x-portable-pixmap', 
         'ppt' => 'application/vnd.ms-powerpoint', 
         'ps' => 'application/postscript', 
         'qt' => 'video/quicktime', 
         'qti' => 'image/x-quicktime', 
         'qtif' => 'image/x-quicktime', 
         'ra' => 'audio/x-pn-realaudio', 
         'ram' => 'audio/x-pn-realaudio', 
         'ras' => 'image/x-cmu-raster', 
         'rdf' => 'application/rdf+xml', 
         'rgb' => 'image/x-rgb', 
         'rm' => 'application/vnd.rn-realmedia', 
         'roff' => 'application/x-troff', 
         'rtf' => 'text/rtf', 
         'rtx' => 'text/richtext', 
         'sgm' => 'text/sgml', 
         'sgml' => 'text/sgml', 
         'sh' => 'application/x-sh', 
         'shar' => 'application/x-shar', 
         'silo' => 'model/mesh', 
         'sit' => 'application/x-stuffit', 
         'skd' => 'application/x-koan', 
         'skm' => 'application/x-koan', 
         'skp' => 'application/x-koan', 
         'skt' => 'application/x-koan', 
         'smi' => 'application/smil', 
         'smil' => 'application/smil', 
         'snd' => 'audio/basic', 
         'so' => 'application/octet-stream', 
         'spl' => 'application/x-futuresplash', 
         'src' => 'application/x-wais-source', 
         'sv4cpio' => 'application/x-sv4cpio', 
         'sv4crc' => 'application/x-sv4crc', 
         'svg' => 'image/svg+xml', 
         'swf' => 'application/x-shockwave-flash', 
         't' => 'application/x-troff', 
         'tar' => 'application/x-tar', 
         'tcl' => 'application/x-tcl', 
         'tex' => 'application/x-tex', 
         'texi' => 'application/x-texinfo', 
         'texinfo' => 'application/x-texinfo', 
         'tif' => 'image/tiff', 
         'tiff' => 'image/tiff', 
         'tr' => 'application/x-troff', 
         'tsv' => 'text/tab-separated-values', 
         'txt' => 'text/plain', 
         'ustar' => 'application/x-ustar', 
         'vcd' => 'application/x-cdlink', 
         'vrml' => 'model/vrml', 
         'vxml' => 'application/voicexml+xml', 
         'wav' => 'audio/x-wav', 
         'wbmp' => 'image/vnd.wap.wbmp', 
         'wbxml' => 'application/vnd.wap.wbxml', 
         'webm' => 'video/webm', 
         'wml' => 'text/vnd.wap.wml', 
         'wmlc' => 'application/vnd.wap.wmlc', 
         'wmls' => 'text/vnd.wap.wmlscript', 
         'wmlsc' => 'application/vnd.wap.wmlscriptc', 
         'wmv' => 'video/x-ms-wmv', 
         'wrl' => 'model/vrml', 
         'xbm' => 'image/x-xbitmap', 
         'xht' => 'application/xhtml+xml', 
         'xhtml' => 'application/xhtml+xml', 
         'xls' => 'application/vnd.ms-excel', 
         'xml' => 'application/xml', 
         'xpm' => 'image/x-xpixmap', 
         'xsl' => 'application/xml', 
         'xslt' => 'application/xslt+xml', 
         'xul' => 'application/vnd.mozilla.xul+xml', 
         'xwd' => 'image/x-xwindowdump', 
         'xyz' => 'chemical/x-xyz', 
         'zip' => 'application/zip' );
    
    

    public static function get_mimetype($ext) {

     return (isset ( self::$mime_types [$ext] ) ? self::$mime_types [$ext] : 'application/octet-stream');
    

    } } </pre>

 本文由用戶 程序猿123 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!