我已经在PHP文档中查看了一段时间,但是我发现无法将MIME类型扩展转换为文件类型扩展名。
image_type_to_extension
如果文件是图像,似乎可以工作。在我的特定情况下,mime类型不适用于图像,它们适用于字体类型:'otf,ttf'。
答案 0 :(得分:21)
您可以使用以下内容:
function getExtension ($mime_type){
$extensions = array('image/jpeg' => 'jpeg',
'text/xml' => 'xml'
);
// Add as many other Mime Types / File Extensions as you like
return $extensions[$mime_type];
}
注意:并非每种MIME类型都有固定的文件扩展名。此外,像application/octet-stream
这样的MIME类型可以引用多个文件扩展名。
答案 1 :(得分:11)
首先获取图像的$ mime类型,然后按' /'这将返回一个数组。
$extension = explode('/', $mime )[1];
答案 2 :(得分:8)
由于Oliver Lillie中的this comment,我们将在这里全力以赴:
function mime2ext($mime) {
$mime_map = [
'video/3gpp2' => '3g2',
'video/3gp' => '3gp',
'video/3gpp' => '3gp',
'application/x-compressed' => '7zip',
'audio/x-acc' => 'aac',
'audio/ac3' => 'ac3',
'application/postscript' => 'ai',
'audio/x-aiff' => 'aif',
'audio/aiff' => 'aif',
'audio/x-au' => 'au',
'video/x-msvideo' => 'avi',
'video/msvideo' => 'avi',
'video/avi' => 'avi',
'application/x-troff-msvideo' => 'avi',
'application/macbinary' => 'bin',
'application/mac-binary' => 'bin',
'application/x-binary' => 'bin',
'application/x-macbinary' => 'bin',
'image/bmp' => 'bmp',
'image/x-bmp' => 'bmp',
'image/x-bitmap' => 'bmp',
'image/x-xbitmap' => 'bmp',
'image/x-win-bitmap' => 'bmp',
'image/x-windows-bmp' => 'bmp',
'image/ms-bmp' => 'bmp',
'image/x-ms-bmp' => 'bmp',
'application/bmp' => 'bmp',
'application/x-bmp' => 'bmp',
'application/x-win-bitmap' => 'bmp',
'application/cdr' => 'cdr',
'application/coreldraw' => 'cdr',
'application/x-cdr' => 'cdr',
'application/x-coreldraw' => 'cdr',
'image/cdr' => 'cdr',
'image/x-cdr' => 'cdr',
'zz-application/zz-winassoc-cdr' => 'cdr',
'application/mac-compactpro' => 'cpt',
'application/pkix-crl' => 'crl',
'application/pkcs-crl' => 'crl',
'application/x-x509-ca-cert' => 'crt',
'application/pkix-cert' => 'crt',
'text/css' => 'css',
'text/x-comma-separated-values' => 'csv',
'text/comma-separated-values' => 'csv',
'application/vnd.msexcel' => 'csv',
'application/x-director' => 'dcr',
'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => 'docx',
'application/x-dvi' => 'dvi',
'message/rfc822' => 'eml',
'application/x-msdownload' => 'exe',
'video/x-f4v' => 'f4v',
'audio/x-flac' => 'flac',
'video/x-flv' => 'flv',
'image/gif' => 'gif',
'application/gpg-keys' => 'gpg',
'application/x-gtar' => 'gtar',
'application/x-gzip' => 'gzip',
'application/mac-binhex40' => 'hqx',
'application/mac-binhex' => 'hqx',
'application/x-binhex40' => 'hqx',
'application/x-mac-binhex40' => 'hqx',
'text/html' => 'html',
'image/x-icon' => 'ico',
'image/x-ico' => 'ico',
'image/vnd.microsoft.icon' => 'ico',
'text/calendar' => 'ics',
'application/java-archive' => 'jar',
'application/x-java-application' => 'jar',
'application/x-jar' => 'jar',
'image/jp2' => 'jp2',
'video/mj2' => 'jp2',
'image/jpx' => 'jp2',
'image/jpm' => 'jp2',
'image/jpeg' => 'jpeg',
'image/pjpeg' => 'jpeg',
'application/x-javascript' => 'js',
'application/json' => 'json',
'text/json' => 'json',
'application/vnd.google-earth.kml+xml' => 'kml',
'application/vnd.google-earth.kmz' => 'kmz',
'text/x-log' => 'log',
'audio/x-m4a' => 'm4a',
'audio/mp4' => 'm4a',
'application/vnd.mpegurl' => 'm4u',
'audio/midi' => 'mid',
'application/vnd.mif' => 'mif',
'video/quicktime' => 'mov',
'video/x-sgi-movie' => 'movie',
'audio/mpeg' => 'mp3',
'audio/mpg' => 'mp3',
'audio/mpeg3' => 'mp3',
'audio/mp3' => 'mp3',
'video/mp4' => 'mp4',
'video/mpeg' => 'mpeg',
'application/oda' => 'oda',
'audio/ogg' => 'ogg',
'video/ogg' => 'ogg',
'application/ogg' => 'ogg',
'application/x-pkcs10' => 'p10',
'application/pkcs10' => 'p10',
'application/x-pkcs12' => 'p12',
'application/x-pkcs7-signature' => 'p7a',
'application/pkcs7-mime' => 'p7c',
'application/x-pkcs7-mime' => 'p7c',
'application/x-pkcs7-certreqresp' => 'p7r',
'application/pkcs7-signature' => 'p7s',
'application/pdf' => 'pdf',
'application/octet-stream' => 'pdf',
'application/x-x509-user-cert' => 'pem',
'application/x-pem-file' => 'pem',
'application/pgp' => 'pgp',
'application/x-httpd-php' => 'php',
'application/php' => 'php',
'application/x-php' => 'php',
'text/php' => 'php',
'text/x-php' => 'php',
'application/x-httpd-php-source' => 'php',
'image/png' => 'png',
'image/x-png' => 'png',
'application/powerpoint' => 'ppt',
'application/vnd.ms-powerpoint' => 'ppt',
'application/vnd.ms-office' => 'ppt',
'application/msword' => 'ppt',
'application/vnd.openxmlformats-officedocument.presentationml.presentation' => 'pptx',
'application/x-photoshop' => 'psd',
'image/vnd.adobe.photoshop' => 'psd',
'audio/x-realaudio' => 'ra',
'audio/x-pn-realaudio' => 'ram',
'application/x-rar' => 'rar',
'application/rar' => 'rar',
'application/x-rar-compressed' => 'rar',
'audio/x-pn-realaudio-plugin' => 'rpm',
'application/x-pkcs7' => 'rsa',
'text/rtf' => 'rtf',
'text/richtext' => 'rtx',
'video/vnd.rn-realvideo' => 'rv',
'application/x-stuffit' => 'sit',
'application/smil' => 'smil',
'text/srt' => 'srt',
'image/svg+xml' => 'svg',
'application/x-shockwave-flash' => 'swf',
'application/x-tar' => 'tar',
'application/x-gzip-compressed' => 'tgz',
'image/tiff' => 'tiff',
'text/plain' => 'txt',
'text/x-vcard' => 'vcf',
'application/videolan' => 'vlc',
'text/vtt' => 'vtt',
'audio/x-wav' => 'wav',
'audio/wave' => 'wav',
'audio/wav' => 'wav',
'application/wbxml' => 'wbxml',
'video/webm' => 'webm',
'audio/x-ms-wma' => 'wma',
'application/wmlc' => 'wmlc',
'video/x-ms-wmv' => 'wmv',
'video/x-ms-asf' => 'wmv',
'application/xhtml+xml' => 'xhtml',
'application/excel' => 'xl',
'application/msexcel' => 'xls',
'application/x-msexcel' => 'xls',
'application/x-ms-excel' => 'xls',
'application/x-excel' => 'xls',
'application/x-dos_ms_excel' => 'xls',
'application/xls' => 'xls',
'application/x-xls' => 'xls',
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => 'xlsx',
'application/vnd.ms-excel' => 'xlsx',
'application/xml' => 'xml',
'text/xml' => 'xml',
'text/xsl' => 'xsl',
'application/xspf+xml' => 'xspf',
'application/x-compress' => 'z',
'application/x-zip' => 'zip',
'application/zip' => 'zip',
'application/x-zip-compressed' => 'zip',
'application/s-compressed' => 'zip',
'multipart/x-zip' => 'zip',
'text/x-scriptzsh' => 'zsh',
];
return isset($mime_map[$mime]) ? $mime_map[$mime] : false;
}
答案 3 :(得分:2)
仅使用纯 PHP 来解决非常困难的问题。您必须手动管理 MIME 到扩展的映射,几乎所有以前的答案都指出。
幸运的是,有一个很棒的composer library that just does that for you:
composer require ralouphie/mimey
然后就是:
<?php
$mimes = new \Mimey\MimeTypes;
$mimes->getExtension('application/x-font-otf'); // otf
$mimes->getAllExtensions('image/jpeg'); // array('jpeg', 'jpg', 'jpe')
答案 4 :(得分:1)
在开放空间github gist上找到:
function mime2ext($mime)
{
$all_mimes = '{"png":["image\/png","image\/x-png"],"bmp":["image\/bmp","image\/x-bmp","image\/x-bitmap","image\/x-xbitmap","image\/x-win-bitmap","image\/x-windows-bmp","image\/ms-bmp","image\/x-ms-bmp","application\/bmp","application\/x-bmp","application\/x-win-bitmap"],"gif":["image\/gif"],"jpeg":["image\/jpeg","image\/pjpeg"],"xspf":["application\/xspf+xml"],"vlc":["application\/videolan"],"wmv":["video\/x-ms-wmv","video\/x-ms-asf"],"au":["audio\/x-au"],"ac3":["audio\/ac3"],"flac":["audio\/x-flac"],"ogg":["audio\/ogg","video\/ogg","application\/ogg"],"kmz":["application\/vnd.google-earth.kmz"],"kml":["application\/vnd.google-earth.kml+xml"],"rtx":["text\/richtext"],"rtf":["text\/rtf"],"jar":["application\/java-archive","application\/x-java-application","application\/x-jar"],"zip":["application\/x-zip","application\/zip","application\/x-zip-compressed","application\/s-compressed","multipart\/x-zip"],"7zip":["application\/x-compressed"],"xml":["application\/xml","text\/xml"],"svg":["image\/svg+xml"],"3g2":["video\/3gpp2"],"3gp":["video\/3gp","video\/3gpp"],"mp4":["video\/mp4"],"m4a":["audio\/x-m4a"],"f4v":["video\/x-f4v"],"flv":["video\/x-flv"],"webm":["video\/webm"],"aac":["audio\/x-acc"],"m4u":["application\/vnd.mpegurl"],"pdf":["application\/pdf","application\/octet-stream"],"pptx":["application\/vnd.openxmlformats-officedocument.presentationml.presentation"],"ppt":["application\/powerpoint","application\/vnd.ms-powerpoint","application\/vnd.ms-office","application\/msword"],"docx":["application\/vnd.openxmlformats-officedocument.wordprocessingml.document"],"xlsx":["application\/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application\/vnd.ms-excel"],"xl":["application\/excel"],"xls":["application\/msexcel","application\/x-msexcel","application\/x-ms-excel","application\/x-excel","application\/x-dos_ms_excel","application\/xls","application\/x-xls"],"xsl":["text\/xsl"],"mpeg":["video\/mpeg"],"mov":["video\/quicktime"],"avi":["video\/x-msvideo","video\/msvideo","video\/avi","application\/x-troff-msvideo"],"movie":["video\/x-sgi-movie"],"log":["text\/x-log"],"txt":["text\/plain"],"css":["text\/css"],"html":["text\/html"],"wav":["audio\/x-wav","audio\/wave","audio\/wav"],"xhtml":["application\/xhtml+xml"],"tar":["application\/x-tar"],"tgz":["application\/x-gzip-compressed"],"psd":["application\/x-photoshop","image\/vnd.adobe.photoshop"],"exe":["application\/x-msdownload"],"js":["application\/x-javascript"],"mp3":["audio\/mpeg","audio\/mpg","audio\/mpeg3","audio\/mp3"],"rar":["application\/x-rar","application\/rar","application\/x-rar-compressed"],"gzip":["application\/x-gzip"],"hqx":["application\/mac-binhex40","application\/mac-binhex","application\/x-binhex40","application\/x-mac-binhex40"],"cpt":["application\/mac-compactpro"],"bin":["application\/macbinary","application\/mac-binary","application\/x-binary","application\/x-macbinary"],"oda":["application\/oda"],"ai":["application\/postscript"],"smil":["application\/smil"],"mif":["application\/vnd.mif"],"wbxml":["application\/wbxml"],"wmlc":["application\/wmlc"],"dcr":["application\/x-director"],"dvi":["application\/x-dvi"],"gtar":["application\/x-gtar"],"php":["application\/x-httpd-php","application\/php","application\/x-php","text\/php","text\/x-php","application\/x-httpd-php-source"],"swf":["application\/x-shockwave-flash"],"sit":["application\/x-stuffit"],"z":["application\/x-compress"],"mid":["audio\/midi"],"aif":["audio\/x-aiff","audio\/aiff"],"ram":["audio\/x-pn-realaudio"],"rpm":["audio\/x-pn-realaudio-plugin"],"ra":["audio\/x-realaudio"],"rv":["video\/vnd.rn-realvideo"],"jp2":["image\/jp2","video\/mj2","image\/jpx","image\/jpm"],"tiff":["image\/tiff"],"eml":["message\/rfc822"],"pem":["application\/x-x509-user-cert","application\/x-pem-file"],"p10":["application\/x-pkcs10","application\/pkcs10"],"p12":["application\/x-pkcs12"],"p7a":["application\/x-pkcs7-signature"],"p7c":["application\/pkcs7-mime","application\/x-pkcs7-mime"],"p7r":["application\/x-pkcs7-certreqresp"],"p7s":["application\/pkcs7-signature"],"crt":["application\/x-x509-ca-cert","application\/pkix-cert"],"crl":["application\/pkix-crl","application\/pkcs-crl"],"pgp":["application\/pgp"],"gpg":["application\/gpg-keys"],"rsa":["application\/x-pkcs7"],"ics":["text\/calendar"],"zsh":["text\/x-scriptzsh"],"cdr":["application\/cdr","application\/coreldraw","application\/x-cdr","application\/x-coreldraw","image\/cdr","image\/x-cdr","zz-application\/zz-winassoc-cdr"],"wma":["audio\/x-ms-wma"],"vcf":["text\/x-vcard"],"srt":["text\/srt"],"vtt":["text\/vtt"],"ico":["image\/x-icon","image\/x-ico","image\/vnd.microsoft.icon"],"csv":["text\/x-comma-separated-values","text\/comma-separated-values","application\/vnd.msexcel"],"json":["application\/json","text\/json"]}';
$all_mimes = json_decode($all_mimes,true);
foreach( $all_mimes as $key => $value )
if( array_search($mime,$value) !== false ) return $key;
return false;
}
还将列表转换为数组,以方便添加mime类型-gist
答案 5 :(得分:0)
您可以使用以下课程。
用法:
<?php
echo MapMimeTypeToExtension::getExtension('application/andrew-inset');
?>
最小类(我无法在回复中放入格式化的PHP脚本):
<?php abstract class MapMimeTypeToExtension{public const MAP=['application/andrew-inset'=>'ez','application/applixware'=>'aw','application/atom+xml'=>'atom','application/atomcat+xml'=>'atomcat','application/atomsvc+xml'=>'atomsvc','application/ccxml+xml'=>'ccxml','application/cdmi-capability'=>'cdmia','application/cdmi-container'=>'cdmic','application/cdmi-domain'=>'cdmid','application/cdmi-object'=>'cdmio','application/cdmi-queue'=>'cdmiq','application/cu-seeme'=>'cu','application/davmount+xml'=>'davmount','application/dssc+der'=>'dssc','application/dssc+xml'=>'xdssc','application/ecmascript'=>'ecma','application/emma+xml'=>'emma','application/epub+zip'=>'epub','application/exi'=>'exi','application/font-tdpfr'=>'pfr','application/hyperstudio'=>'stk','application/inkml+xml'=>'ink','application/ipfix'=>'ipfix','application/java-archive'=>'jar','application/java-serialized-object'=>'ser','application/java-vm'=>'class','application/javascript'=>'js','application/json'=>'json','application/lost+xml'=>'lostxml','application/mac-binhex40'=>'hqx','application/mac-compactpro'=>'cpt','application/mads+xml'=>'mads','application/marc'=>'mrc','application/marcxml+xml'=>'mrcx','application/mathematica'=>'ma','application/mathml+xml'=>'mathml','application/mbox'=>'mbox','application/mediaservercontrol+xml'=>'mscml','application/metalink4+xml'=>'meta4','application/mets+xml'=>'mets','application/mods+xml'=>'mods','application/mp21'=>'m21','application/mp4'=>'mp4s','application/msword'=>'doc','application/mxf'=>'mxf','application/octet-stream'=>'bin','application/oda'=>'oda','application/oebps-package+xml'=>'opf','application/ogg'=>'ogx','application/onenote'=>'onetoc','application/oxps'=>'oxps','application/patch-ops-error+xml'=>'xer','application/pdf'=>'pdf','application/pgp-encrypted'=>'pgp','application/pgp-signature'=>'asc','application/pics-rules'=>'prf','application/pkcs10'=>'p10','application/pkcs7-mime'=>'p7m','application/pkcs7-signature'=>'p7s','application/pkcs8'=>'p8','application/pkix-attr-cert'=>'ac','application/pkix-cert'=>'cer','application/pkix-crl'=>'crl','application/pkix-pkipath'=>'pkipath','application/pkixcmp'=>'pki','application/pls+xml'=>'pls','application/postscript'=>'ai','application/prs.cww'=>'cww','application/pskc+xml'=>'pskcxml','application/rdf+xml'=>'rdf','application/reginfo+xml'=>'rif','application/relax-ng-compact-syntax'=>'rnc','application/resource-lists+xml'=>'rl','application/resource-lists-diff+xml'=>'rld','application/rls-services+xml'=>'rs','application/rpki-ghostbusters'=>'gbr','application/rpki-manifest'=>'mft','application/rpki-roa'=>'roa','application/rsd+xml'=>'rsd','application/rss+xml'=>'rss','application/rtf'=>'rtf','application/sbml+xml'=>'sbml','application/scvp-cv-request'=>'scq','application/scvp-cv-response'=>'scs','application/scvp-vp-request'=>'spq','application/scvp-vp-response'=>'spp','application/sdp'=>'sdp','application/set-payment-initiation'=>'setpay','application/set-registration-initiation'=>'setreg','application/shf+xml'=>'shf','application/smil+xml'=>'smi','application/sparql-query'=>'rq','application/sparql-results+xml'=>'srx','application/srgs'=>'gram','application/srgs+xml'=>'grxml','application/sru+xml'=>'sru','application/ssml+xml'=>'ssml','application/tei+xml'=>'tei','application/thraud+xml'=>'tfi','application/timestamped-data'=>'tsd','application/vnd.3gpp.pic-bw-large'=>'plb','application/vnd.3gpp.pic-bw-small'=>'psb','application/vnd.3gpp.pic-bw-var'=>'pvb','application/vnd.3gpp2.tcap'=>'tcap','application/vnd.3m.post-it-notes'=>'pwn','application/vnd.accpac.simply.aso'=>'aso','application/vnd.accpac.simply.imp'=>'imp','application/vnd.acucobol'=>'acu','application/vnd.acucorp'=>'atc','application/vnd.adobe.air-application-installer-package+zip'=>'air','application/vnd.adobe.fxp'=>'fxp','application/vnd.adobe.xdp+xml'=>'xdp','application/vnd.adobe.xfdf'=>'xfdf','application/vnd.ahead.space'=>'ahead','application/vnd.airzip.filesecure.azf'=>'azf','application/vnd.airzip.filesecure.azs'=>'azs','application/vnd.amazon.ebook'=>'azw','application/vnd.americandynamics.acc'=>'acc','application/vnd.amiga.ami'=>'ami','application/vnd.android.package-archive'=>'apk','application/vnd.anser-web-certificate-issue-initiation'=>'cii','application/vnd.anser-web-funds-transfer-initiation'=>'fti','application/vnd.antix.game-component'=>'atx','application/vnd.apple.installer+xml'=>'mpkg','application/vnd.apple.mpegurl'=>'m3u8','application/vnd.aristanetworks.swi'=>'swi','application/vnd.astraea-software.iota'=>'iota','application/vnd.audiograph'=>'aep','application/vnd.blueice.multipass'=>'mpm','application/vnd.bmi'=>'bmi','application/vnd.businessobjects'=>'rep','application/vnd.chemdraw+xml'=>'cdxml','application/vnd.chipnuts.karaoke-mmd'=>'mmd','application/vnd.cinderella'=>'cdy','application/vnd.claymore'=>'cla','application/vnd.cloanto.rp9'=>'rp9','application/vnd.clonk.c4group'=>'c4g','application/vnd.cluetrust.cartomobile-config'=>'c11amc','application/vnd.cluetrust.cartomobile-config-pkg'=>'c11amz','application/vnd.commonspace'=>'csp','application/vnd.contact.cmsg'=>'cdbcmsg','application/vnd.cosmocaller'=>'cmc','application/vnd.crick.clicker'=>'clkx','application/vnd.crick.clicker.keyboard'=>'clkk','application/vnd.crick.clicker.palette'=>'clkp','application/vnd.crick.clicker.template'=>'clkt','application/vnd.crick.clicker.wordbank'=>'clkw','application/vnd.criticaltools.wbs+xml'=>'wbs','application/vnd.ctc-posml'=>'pml','application/vnd.cups-ppd'=>'ppd','application/vnd.curl.car'=>'car','application/vnd.curl.pcurl'=>'pcurl','application/vnd.data-vision.rdz'=>'rdz','application/vnd.dece.data'=>'uvf','application/vnd.dece.ttml+xml'=>'uvt','application/vnd.dece.unspecified'=>'uvx','application/vnd.dece.zip'=>'uvz','application/vnd.denovo.fcselayout-link'=>'fe_launch','application/vnd.dna'=>'dna','application/vnd.dolby.mlp'=>'mlp','application/vnd.dpgraph'=>'dpg','application/vnd.dreamfactory'=>'dfac','application/vnd.dvb.ait'=>'ait','application/vnd.dvb.service'=>'svc','application/vnd.dynageo'=>'geo','application/vnd.ecowin.chart'=>'mag','application/vnd.enliven'=>'nml','application/vnd.epson.esf'=>'esf','application/vnd.epson.msf'=>'msf','application/vnd.epson.quickanime'=>'qam','application/vnd.epson.salt'=>'slt','application/vnd.epson.ssf'=>'ssf','application/vnd.eszigno3+xml'=>'es3','application/vnd.ezpix-album'=>'ez2','application/vnd.ezpix-package'=>'ez3','application/vnd.fdf'=>'fdf','application/vnd.fdsn.mseed'=>'mseed','application/vnd.fdsn.seed'=>'seed','application/vnd.flographit'=>'gph','application/vnd.fluxtime.clip'=>'ftc','application/vnd.framemaker'=>'fm','application/vnd.frogans.fnc'=>'fnc','application/vnd.frogans.ltf'=>'ltf','application/vnd.fsc.weblaunch'=>'fsc','application/vnd.fujitsu.oasys'=>'oas','application/vnd.fujitsu.oasys2'=>'oa2','application/vnd.fujitsu.oasys3'=>'oa3','application/vnd.fujitsu.oasysgp'=>'fg5','application/vnd.fujitsu.oasysprs'=>'bh2','application/vnd.fujixerox.ddd'=>'ddd','application/vnd.fujixerox.docuworks'=>'xdw','application/vnd.fujixerox.docuworks.binder'=>'xbd','application/vnd.fuzzysheet'=>'fzs','application/vnd.genomatix.tuxedo'=>'txd','application/vnd.geogebra.file'=>'ggb','application/vnd.geogebra.tool'=>'ggt','application/vnd.geometry-explorer'=>'gex','application/vnd.geonext'=>'gxt','application/vnd.geoplan'=>'g2w','application/vnd.geospace'=>'g3w','application/vnd.gmx'=>'gmx','application/vnd.google-earth.kml+xml'=>'kml','application/vnd.google-earth.kmz'=>'kmz','application/vnd.grafeq'=>'gqf','application/vnd.groove-account'=>'gac','application/vnd.groove-help'=>'ghf','application/vnd.groove-identity-message'=>'gim','application/vnd.groove-injector'=>'grv','application/vnd.groove-tool-message'=>'gtm','application/vnd.groove-tool-template'=>'tpl','application/vnd.groove-vcard'=>'vcg','application/vnd.hal+xml'=>'hal','application/vnd.handheld-entertainment+xml'=>'zmm','application/vnd.hbci'=>'hbci','application/vnd.hhe.lesson-player'=>'les','application/vnd.hp-hpgl'=>'hpgl','application/vnd.hp-hpid'=>'hpid','application/vnd.hp-hps'=>'hps','application/vnd.hp-jlyt'=>'jlt','application/vnd.hp-pcl'=>'pcl','application/vnd.hp-pclxl'=>'pclxl','application/vnd.hydrostatix.sof-data'=>'sfd-hdstx','application/vnd.hzn-3d-crossword'=>'x3d','application/vnd.ibm.minipay'=>'mpy','application/vnd.ibm.modcap'=>'afp','application/vnd.ibm.rights-management'=>'irm','application/vnd.ibm.secure-container'=>'sc','application/vnd.iccprofile'=>'icc','application/vnd.igloader'=>'igl','application/vnd.immervision-ivp'=>'ivp','application/vnd.immervision-ivu'=>'ivu','application/vnd.insors.igm'=>'igm','application/vnd.intercon.formnet'=>'xpw','application/vnd.intergeo'=>'i2g','application/vnd.intu.qbo'=>'qbo','application/vnd.intu.qfx'=>'qfx','application/vnd.ipunplugged.rcprofile'=>'rcprofile','application/vnd.irepository.package+xml'=>'irp','application/vnd.is-xpr'=>'xpr','application/vnd.isac.fcs'=>'fcs','application/vnd.jam'=>'jam','application/vnd.jcp.javame.midlet-rms'=>'rms','application/vnd.jisp'=>'jisp','application/vnd.joost.joda-archive'=>'joda','application/vnd.kahootz'=>'ktz','application/vnd.kde.karbon'=>'karbon','application/vnd.kde.kchart'=>'chrt','application/vnd.kde.kformula'=>'kfo','application/vnd.kde.kivio'=>'flw','application/vnd.kde.kontour'=>'kon','application/vnd.kde.kpresenter'=>'kpr','application/vnd.kde.kspread'=>'ksp','application/vnd.kde.kword'=>'kwd','application/vnd.kenameaapp'=>'htke','application/vnd.kidspiration'=>'kia','application/vnd.kinar'=>'kne','application/vnd.koan'=>'skp','application/vnd.kodak-descriptor'=>'sse','application/vnd.las.las+xml'=>'lasxml','application/vnd.llamagraphics.life-balance.desktop'=>'lbd','application/vnd.llamagraphics.life-balance.exchange+xml'=>'lbe','application/vnd.lotus-1-2-3'=>'123','application/vnd.lotus-approach'=>'apr','application/vnd.lotus-freelance'=>'pre','application/vnd.lotus-notes'=>'nsf','application/vnd.lotus-organizer'=>'org','application/vnd.lotus-screencam'=>'scm','application/vnd.lotus-wordpro'=>'lwp','application/vnd.macports.portpkg'=>'portpkg','application/vnd.mcd'=>'mcd','application/vnd.medcalcdata'=>'mc1','application/vnd.mediastation.cdkey'=>'cdkey','application/vnd.mfer'=>'mwf','application/vnd.mfmp'=>'mfm','application/vnd.micrografx.flo'=>'flo','application/vnd.micrografx.igx'=>'igx','application/vnd.mif'=>'mif','application/vnd.mobius.daf'=>'daf','application/vnd.mobius.dis'=>'dis','application/vnd.mobius.mbk'=>'mbk','application/vnd.mobius.mqy'=>'mqy','application/vnd.mobius.msl'=>'msl','application/vnd.mobius.plc'=>'plc','application/vnd.mobius.txf'=>'txf','application/vnd.mophun.application'=>'mpn','application/vnd.mophun.certificate'=>'mpc','application/vnd.mozilla.xul+xml'=>'xul','application/vnd.ms-artgalry'=>'cil','application/vnd.ms-cab-compressed'=>'cab','application/vnd.ms-excel'=>'xls','application/vnd.ms-excel.addin.macroenabled.12'=>'xlam','application/vnd.ms-excel.sheet.binary.macroenabled.12'=>'xlsb','application/vnd.ms-excel.sheet.macroenabled.12'=>'xlsm','application/vnd.ms-excel.template.macroenabled.12'=>'xltm','application/vnd.ms-fontobject'=>'eot','application/vnd.ms-htmlhelp'=>'chm','application/vnd.ms-ims'=>'ims','application/vnd.ms-lrm'=>'lrm','application/vnd.ms-officetheme'=>'thmx','application/vnd.ms-pki.seccat'=>'cat','application/vnd.ms-pki.stl'=>'stl','application/vnd.ms-powerpoint'=>'ppt','application/vnd.ms-powerpoint.addin.macroenabled.12'=>'ppam','application/vnd.ms-powerpoint.presentation.macroenabled.12'=>'pptm','application/vnd.ms-powerpoint.slide.macroenabled.12'=>'sldm','application/vnd.ms-powerpoint.slideshow.macroenabled.12'=>'ppsm','application/vnd.ms-powerpoint.template.macroenabled.12'=>'potm','application/vnd.ms-project'=>'mpp','application/vnd.ms-word.document.macroenabled.12'=>'docm','application/vnd.ms-word.template.macroenabled.12'=>'dotm','application/vnd.ms-works'=>'wps','application/vnd.ms-wpl'=>'wpl','application/vnd.ms-xpsdocument'=>'xps','application/vnd.mseq'=>'mseq','application/vnd.musician'=>'mus','application/vnd.muvee.style'=>'msty','application/vnd.mynfc'=>'taglet','application/vnd.neurolanguage.nlu'=>'nlu','application/vnd.noblenet-directory'=>'nnd','application/vnd.noblenet-sealer'=>'nns','application/vnd.noblenet-web'=>'nnw','application/vnd.nokia.n-gage.data'=>'ngdat','application/vnd.nokia.n-gage.symbian.install'=>'n-gage','application/vnd.nokia.radio-preset'=>'rpst','application/vnd.nokia.radio-presets'=>'rpss','application/vnd.novadigm.edm'=>'edm','application/vnd.novadigm.edx'=>'edx','application/vnd.novadigm.ext'=>'ext','application/vnd.oasis.opendocument.chart'=>'odc','application/vnd.oasis.opendocument.chart-template'=>'otc','application/vnd.oasis.opendocument.database'=>'odb','application/vnd.oasis.opendocument.formula'=>'odf','application/vnd.oasis.opendocument.formula-template'=>'odft','application/vnd.oasis.opendocument.graphics'=>'odg','application/vnd.oasis.opendocument.graphics-template'=>'otg','application/vnd.oasis.opendocument.image'=>'odi','application/vnd.oasis.opendocument.image-template'=>'oti','application/vnd.oasis.opendocument.presentation'=>'odp','application/vnd.oasis.opendocument.presentation-template'=>'otp','application/vnd.oasis.opendocument.spreadsheet'=>'ods','application/vnd.oasis.opendocument.spreadsheet-template'=>'ots','application/vnd.oasis.opendocument.text'=>'odt','application/vnd.oasis.opendocument.text-master'=>'odm','application/vnd.oasis.opendocument.text-template'=>'ott','application/vnd.oasis.opendocument.text-web'=>'oth','application/vnd.olpc-sugar'=>'xo','application/vnd.oma.dd2+xml'=>'dd2','application/vnd.openofficeorg.extension'=>'oxt','application/vnd.openxmlformats-officedocument.presentationml.presentation'=>'pptx','application/vnd.openxmlformats-officedocument.presentationml.slide'=>'sldx','application/vnd.openxmlformats-officedocument.presentationml.slideshow'=>'ppsx','application/vnd.openxmlformats-officedocument.presentationml.template'=>'potx','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'=>'xlsx','application/vnd.openxmlformats-officedocument.spreadsheetml.template'=>'xltx','application/vnd.openxmlformats-officedocument.wordprocessingml.document'=>'docx','application/vnd.openxmlformats-officedocument.wordprocessingml.template'=>'dotx','application/vnd.osgeo.mapguide.package'=>'mgp','application/vnd.osgi.dp'=>'dp','application/vnd.palm'=>'pdb','application/vnd.pawaafile'=>'paw','application/vnd.pg.format'=>'str','application/vnd.pg.osasli'=>'ei6','application/vnd.picsel'=>'efif','application/vnd.pmi.widget'=>'wg','application/vnd.pocketlearn'=>'plf','application/vnd.powerbuilder6'=>'pbd','application/vnd.previewsystems.box'=>'box','application/vnd.proteus.magazine'=>'mgz','application/vnd.publishare-delta-tree'=>'qps','application/vnd.pvi.ptid1'=>'ptid','application/vnd.quark.quarkxpress'=>'qxd','application/vnd.realvnc.bed'=>'bed','application/vnd.recordare.musicxml'=>'mxl','application/vnd.recordare.musicxml+xml'=>'musicxml','application/vnd.rig.cryptonote'=>'cryptonote','application/vnd.rim.cod'=>'cod','application/vnd.rn-realmedia'=>'rm','application/vnd.route66.link66+xml'=>'link66','application/vnd.sailingtracker.track'=>'st','application/vnd.seemail'=>'see','application/vnd.sema'=>'sema','application/vnd.semd'=>'semd','application/vnd.semf'=>'semf','application/vnd.shana.informed.formdata'=>'ifm','application/vnd.shana.informed.formtemplate'=>'itp','application/vnd.shana.informed.interchange'=>'iif','application/vnd.shana.informed.package'=>'ipk','application/vnd.simtech-mindmapper'=>'twd','application/vnd.smaf'=>'mmf','application/vnd.smart.teacher'=>'teacher','application/vnd.solent.sdkm+xml'=>'sdkm','application/vnd.spotfire.dxp'=>'dxp','application/vnd.spotfire.sfs'=>'sfs','application/vnd.stardivision.calc'=>'sdc','application/vnd.stardivision.draw'=>'sda','application/vnd.stardivision.impress'=>'sdd','application/vnd.stardivision.math'=>'smf','application/vnd.stardivision.writer'=>'sdw','application/vnd.stardivision.writer-global'=>'sgl','application/vnd.stepmania.package'=>'smzip','application/vnd.stepmania.stepchart'=>'sm','application/vnd.sun.xml.calc'=>'sxc','application/vnd.sun.xml.calc.template'=>'stc','application/vnd.sun.xml.draw'=>'sxd','application/vnd.sun.xml.draw.template'=>'std','application/vnd.sun.xml.impress'=>'sxi','application/vnd.sun.xml.impress.template'=>'sti','application/vnd.sun.xml.math'=>'sxm','application/vnd.sun.xml.writer'=>'sxw','application/vnd.sun.xml.writer.global'=>'sxg','application/vnd.sun.xml.writer.template'=>'stw','application/vnd.sus-calendar'=>'sus','application/vnd.svd'=>'svd','application/vnd.symbian.install'=>'sis','application/vnd.syncml+xml'=>'xsm','application/vnd.syncml.dm+wbxml'=>'bdm','application/vnd.syncml.dm+xml'=>'xdm','application/vnd.tao.intent-module-archive'=>'tao','application/vnd.tcpdump.pcap'=>'pcap','application/vnd.tmobile-livetv'=>'tmo','application/vnd.trid.tpt'=>'tpt','application/vnd.triscape.mxs'=>'mxs','application/vnd.trueapp'=>'tra','application/vnd.ufdl'=>'ufd','application/vnd.uiq.theme'=>'utz','application/vnd.umajin'=>'umj','application/vnd.unity'=>'unityweb','application/vnd.uoml+xml'=>'uoml','application/vnd.vcx'=>'vcx','application/vnd.visio'=>'vsd','application/vnd.visionary'=>'vis','application/vnd.vsf'=>'vsf','application/vnd.wap.wbxml'=>'wbxml','application/vnd.wap.wmlc'=>'wmlc','application/vnd.wap.wmlscriptc'=>'wmlsc','application/vnd.webturbo'=>'wtb','application/vnd.wolfram.player'=>'nbp','application/vnd.wordperfect'=>'wpd','application/vnd.wqd'=>'wqd','application/vnd.wt.stf'=>'stf','application/vnd.xara'=>'xar','application/vnd.xfdl'=>'xfdl','application/vnd.yamaha.hv-dic'=>'hvd','application/vnd.yamaha.hv-script'=>'hvs','application/vnd.yamaha.hv-voice'=>'hvp','application/vnd.yamaha.openscoreformat'=>'osf','application/vnd.yamaha.openscoreformat.osfpvg+xml'=>'osfpvg','application/vnd.yamaha.smaf-audio'=>'saf','application/vnd.yamaha.smaf-phrase'=>'spf','application/vnd.yellowriver-custom-menu'=>'cmp','application/vnd.zul'=>'zir','application/vnd.zzazz.deck+xml'=>'zaz','application/voicexml+xml'=>'vxml','application/widget'=>'wgt','application/winhlp'=>'hlp','application/wsdl+xml'=>'wsdl','application/wspolicy+xml'=>'wspolicy','application/x-7z-compressed'=>'7z','application/x-abiword'=>'abw','application/x-ace-compressed'=>'ace','application/x-authorware-bin'=>'aab','application/x-authorware-map'=>'aam','application/x-authorware-seg'=>'aas','application/x-bcpio'=>'bcpio','application/x-bittorrent'=>'torrent','application/x-bzip'=>'bz','application/x-bzip2'=>'bz2','application/x-cdlink'=>'vcd','application/x-chat'=>'chat','application/x-chess-pgn'=>'pgn','application/x-cpio'=>'cpio','application/x-csh'=>'csh','application/x-debian-package'=>'deb','application/x-director'=>'dir','application/x-doom'=>'wad','application/x-dtbncx+xml'=>'ncx','application/x-dtbook+xml'=>'dtb','application/x-dtbresource+xml'=>'res','application/x-dvi'=>'dvi','application/x-font-bdf'=>'bdf','application/x-font-ghostscript'=>'gsf','application/x-font-linux-psf'=>'psf','application/x-font-otf'=>'otf','application/x-font-pcf'=>'pcf','application/x-font-snf'=>'snf','application/x-font-ttf'=>'ttf','application/x-font-type1'=>'pfa','application/x-font-woff'=>'woff','application/x-futuresplash'=>'spl','application/x-gnumeric'=>'gnumeric','application/x-gtar'=>'gtar','application/x-hdf'=>'hdf','application/x-java-jnlp-file'=>'jnlp','application/x-latex'=>'latex','application/x-mobipocket-ebook'=>'prc','application/x-ms-application'=>'application','application/x-ms-wmd'=>'wmd','application/x-ms-wmz'=>'wmz','application/x-ms-xbap'=>'xbap','application/x-msaccess'=>'mdb','application/x-msbinder'=>'obd','application/x-mscardfile'=>'crd','application/x-msclip'=>'clp','application/x-msdownload'=>'exe','application/x-msmediaview'=>'mvb','application/x-msmetafile'=>'wmf','application/x-msmoney'=>'mny','application/x-mspublisher'=>'pub','application/x-msschedule'=>'scd','application/x-msterminal'=>'trm','application/x-mswrite'=>'wri','application/x-netcdf'=>'nc','application/x-pkcs12'=>'p12','application/x-pkcs7-certificates'=>'p7b','application/x-pkcs7-certreqresp'=>'p7r','application/x-rar-compressed'=>'rar','application/x-sh'=>'sh','application/x-shar'=>'shar','application/x-shockwave-flash'=>'swf','application/x-silverlight-app'=>'xap','application/x-stuffit'=>'sit','application/x-stuffitx'=>'sitx','application/x-sv4cpio'=>'sv4cpio','application/x-sv4crc'=>'sv4crc','application/x-tar'=>'tar','application/x-tcl'=>'tcl','application/x-tex'=>'tex','application/x-tex-tfm'=>'tfm','application/x-texinfo'=>'texinfo','application/x-ustar'=>'ustar','application/x-wais-source'=>'src','application/x-x509-ca-cert'=>'der','application/x-xfig'=>'fig','application/x-xpinstall'=>'xpi','application/xcap-diff+xml'=>'xdf','application/xenc+xml'=>'xenc','application/xhtml+xml'=>'xhtml','application/xml'=>'xml','application/xml-dtd'=>'dtd','application/xop+xml'=>'xop','application/xslt+xml'=>'xslt','application/xspf+xml'=>'xspf','application/xv+xml'=>'mxml','application/yang'=>'yang','application/yin+xml'=>'yin','application/zip'=>'zip','audio/adpcm'=>'adp','audio/basic'=>'au','audio/midi'=>'mid','audio/mp4'=>'mp4a','audio/mpeg'=>'mpga','audio/ogg'=>'oga','audio/vnd.dece.audio'=>'uva','audio/vnd.digital-winds'=>'eol','audio/vnd.dra'=>'dra','audio/vnd.dts'=>'dts','audio/vnd.dts.hd'=>'dtshd','audio/vnd.lucent.voice'=>'lvp','audio/vnd.ms-playready.media.pya'=>'pya','audio/vnd.nuera.ecelp4800'=>'ecelp4800','audio/vnd.nuera.ecelp7470'=>'ecelp7470','audio/vnd.nuera.ecelp9600'=>'ecelp9600','audio/vnd.rip'=>'rip','audio/webm'=>'weba','audio/x-aac'=>'aac','audio/x-aiff'=>'aif','audio/x-mpegurl'=>'m3u','audio/x-ms-wax'=>'wax','audio/x-ms-wma'=>'wma','audio/x-pn-realaudio'=>'ram','audio/x-pn-realaudio-plugin'=>'rmp','audio/x-wav'=>'wav','chemical/x-cdx'=>'cdx','chemical/x-cif'=>'cif','chemical/x-cmdf'=>'cmdf','chemical/x-cml'=>'cml','chemical/x-csml'=>'csml','chemical/x-xyz'=>'xyz','image/bmp'=>'bmp','image/cgm'=>'cgm','image/g3fax'=>'g3','image/gif'=>'gif','image/ief'=>'ief','image/jpeg'=>'jpeg','image/ktx'=>'ktx','image/png'=>'png','image/prs.btif'=>'btif','image/svg+xml'=>'svg','image/tiff'=>'tiff','image/vnd.adobe.photoshop'=>'psd','image/vnd.dece.graphic'=>'uvi','image/vnd.dvb.subtitle'=>'sub','image/vnd.djvu'=>'djvu','image/vnd.dwg'=>'dwg','image/vnd.dxf'=>'dxf','image/vnd.fastbidsheet'=>'fbs','image/vnd.fpx'=>'fpx','image/vnd.fst'=>'fst','image/vnd.fujixerox.edmics-mmr'=>'mmr','image/vnd.fujixerox.edmics-rlc'=>'rlc','image/vnd.ms-modi'=>'mdi','image/vnd.net-fpx'=>'npx','image/vnd.wap.wbmp'=>'wbmp','image/vnd.xiff'=>'xif','image/webp'=>'webp','image/x-cmu-raster'=>'ras','image/x-cmx'=>'cmx','image/x-freehand'=>'fh','image/x-icon'=>'ico','image/x-pcx'=>'pcx','image/x-pict'=>'pic','image/x-portable-anymap'=>'pnm','image/x-portable-bitmap'=>'pbm','image/x-portable-graymap'=>'pgm','image/x-portable-pixmap'=>'ppm','image/x-rgb'=>'rgb','image/x-xbitmap'=>'xbm','image/x-xpixmap'=>'xpm','image/x-xwindowdump'=>'xwd','message/rfc822'=>'eml','model/iges'=>'igs','model/mesh'=>'msh','model/vnd.collada+xml'=>'dae','model/vnd.dwf'=>'dwf','model/vnd.gdl'=>'gdl','model/vnd.gtw'=>'gtw','model/vnd.mts'=>'mts','model/vnd.vtu'=>'vtu','model/vrml'=>'wrl','text/calendar'=>'ics','text/css'=>'css','text/csv'=>'csv','text/html'=>'html','text/n3'=>'n3','text/plain'=>'txt','text/prs.lines.tag'=>'dsc','text/richtext'=>'rtx','text/sgml'=>'sgml','text/tab-separated-values'=>'tsv','text/troff'=>'t','text/turtle'=>'ttl','text/uri-list'=>'uri','text/vcard'=>'vcard','text/vnd.curl'=>'curl','text/vnd.curl.dcurl'=>'dcurl','text/vnd.curl.scurl'=>'scurl','text/vnd.curl.mcurl'=>'mcurl','text/vnd.dvb.subtitle'=>'sub','text/vnd.fly'=>'fly','text/vnd.fmi.flexstor'=>'flx','text/vnd.graphviz'=>'gv','text/vnd.in3d.3dml'=>'3dml','text/vnd.in3d.spot'=>'spot','text/vnd.sun.j2me.app-descriptor'=>'jad','text/vnd.wap.wml'=>'wml','text/vnd.wap.wmlscript'=>'wmls','text/x-asm'=>'s','text/x-c'=>'c','text/x-fortran'=>'f','text/x-pascal'=>'p','text/x-java-source'=>'java','text/x-setext'=>'etx','text/x-uuencode'=>'uu','text/x-vcalendar'=>'vcs','text/x-vcard'=>'vcf','video/3gpp'=>'3gp','video/3gpp2'=>'3g2','video/h261'=>'h261','video/h263'=>'h263','video/h264'=>'h264','video/jpeg'=>'jpgv','video/jpm'=>'jpm','video/mj2'=>'mj2','video/mp4'=>'mp4','video/mpeg'=>'mpeg','video/ogg'=>'ogv','video/quicktime'=>'qt','video/vnd.dece.hd'=>'uvh','video/vnd.dece.mobile'=>'uvm','video/vnd.dece.pd'=>'uvp','video/vnd.dece.sd'=>'uvs','video/vnd.dece.video'=>'uvv','video/vnd.dvb.file'=>'dvb','video/vnd.fvt'=>'fvt','video/vnd.mpegurl'=>'mxu','video/vnd.ms-playready.media.pyv'=>'pyv','video/vnd.uvvu.mp4'=>'uvu','video/vnd.vivo'=>'viv','video/webm'=>'webm','video/x-f4v'=>'f4v','video/x-fli'=>'fli','video/x-flv'=>'flv','video/x-m4v'=>'m4v','video/x-ms-asf'=>'asf','video/x-ms-wm'=>'wm','video/x-ms-wmv'=>'wmv','video/x-ms-wmx'=>'wmx','video/x-ms-wvx'=>'wvx','video/x-msvideo'=>'avi','video/x-sgi-movie'=>'movie','x-conference/x-cooltalk'=>'ice',];public static function getExtension(string $mimeType):?string{try{return self::MAP[$mimeType];}catch(\Exception $exception){}return null;}} ?>
答案 6 :(得分:-4)
不确定此文件是否始终返回正确的文件扩展名,但您可以使用pathinfo()从文件名中获取扩展名,而不是转换mime_types。
{{1}}