Verzeichnisstruktur phpBB-3.2.0


Veröffentlicht
06.01.2017

So funktioniert es


Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück

Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis.
Auf den Verzeichnisnamen klicken, dies zeigt nur das Verzeichnis mit Inhalt an

(Beispiel Datei-Icons)

Auf das Icon klicken um den Quellcode anzuzeigen

Mimetypes.php

Zuletzt modifiziert: 09.10.2024, 12:56 - Dateigröße: 41.16 KiB


001  <?php
002  namespace GuzzleHttp;
003   
004  /**
005   * Provides mappings of file extensions to mimetypes
006   * @link http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/conf/mime.types
007   */
008  class Mimetypes
009  {
010      /** @var self */
011      protected static $instance;
012   
013      /** @var array Mapping of extension to mimetype */
014      protected $mimetypes = array(
015          '3dml' => 'text/vnd.in3d.3dml',
016          '3g2' => 'video/3gpp2',
017          '3gp' => 'video/3gpp',
018          '7z' => 'application/x-7z-compressed',
019          'aab' => 'application/x-authorware-bin',
020          'aac' => 'audio/x-aac',
021          'aam' => 'application/x-authorware-map',
022          'aas' => 'application/x-authorware-seg',
023          'abw' => 'application/x-abiword',
024          'ac' => 'application/pkix-attr-cert',
025          'acc' => 'application/vnd.americandynamics.acc',
026          'ace' => 'application/x-ace-compressed',
027          'acu' => 'application/vnd.acucobol',
028          'acutc' => 'application/vnd.acucorp',
029          'adp' => 'audio/adpcm',
030          'aep' => 'application/vnd.audiograph',
031          'afm' => 'application/x-font-type1',
032          'afp' => 'application/vnd.ibm.modcap',
033          'ahead' => 'application/vnd.ahead.space',
034          'ai' => 'application/postscript',
035          'aif' => 'audio/x-aiff',
036          'aifc' => 'audio/x-aiff',
037          'aiff' => 'audio/x-aiff',
038          'air' => 'application/vnd.adobe.air-application-installer-package+zip',
039          'ait' => 'application/vnd.dvb.ait',
040          'ami' => 'application/vnd.amiga.ami',
041          'apk' => 'application/vnd.android.package-archive',
042          'application' => 'application/x-ms-application',
043          'apr' => 'application/vnd.lotus-approach',
044          'asa' => 'text/plain',
045          'asax' => 'application/octet-stream',
046          'asc' => 'application/pgp-signature',
047          'ascx' => 'text/plain',
048          'asf' => 'video/x-ms-asf',
049          'ashx' => 'text/plain',
050          'asm' => 'text/x-asm',
051          'asmx' => 'text/plain',
052          'aso' => 'application/vnd.accpac.simply.aso',
053          'asp' => 'text/plain',
054          'aspx' => 'text/plain',
055          'asx' => 'video/x-ms-asf',
056          'atc' => 'application/vnd.acucorp',
057          'atom' => 'application/atom+xml',
058          'atomcat' => 'application/atomcat+xml',
059          'atomsvc' => 'application/atomsvc+xml',
060          'atx' => 'application/vnd.antix.game-component',
061          'au' => 'audio/basic',
062          'avi' => 'video/x-msvideo',
063          'aw' => 'application/applixware',
064          'axd' => 'text/plain',
065          'azf' => 'application/vnd.airzip.filesecure.azf',
066          'azs' => 'application/vnd.airzip.filesecure.azs',
067          'azw' => 'application/vnd.amazon.ebook',
068          'bat' => 'application/x-msdownload',
069          'bcpio' => 'application/x-bcpio',
070          'bdf' => 'application/x-font-bdf',
071          'bdm' => 'application/vnd.syncml.dm+wbxml',
072          'bed' => 'application/vnd.realvnc.bed',
073          'bh2' => 'application/vnd.fujitsu.oasysprs',
074          'bin' => 'application/octet-stream',
075          'bmi' => 'application/vnd.bmi',
076          'bmp' => 'image/bmp',
077          'book' => 'application/vnd.framemaker',
078          'box' => 'application/vnd.previewsystems.box',
079          'boz' => 'application/x-bzip2',
080          'bpk' => 'application/octet-stream',
081          'btif' => 'image/prs.btif',
082          'bz' => 'application/x-bzip',
083          'bz2' => 'application/x-bzip2',
084          'c' => 'text/x-c',
085          'c11amc' => 'application/vnd.cluetrust.cartomobile-config',
086          'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg',
087          'c4d' => 'application/vnd.clonk.c4group',
088          'c4f' => 'application/vnd.clonk.c4group',
089          'c4g' => 'application/vnd.clonk.c4group',
090          'c4p' => 'application/vnd.clonk.c4group',
091          'c4u' => 'application/vnd.clonk.c4group',
092          'cab' => 'application/vnd.ms-cab-compressed',
093          'car' => 'application/vnd.curl.car',
094          'cat' => 'application/vnd.ms-pki.seccat',
095          'cc' => 'text/x-c',
096          'cct' => 'application/x-director',
097          'ccxml' => 'application/ccxml+xml',
098          'cdbcmsg' => 'application/vnd.contact.cmsg',
099          'cdf' => 'application/x-netcdf',
100          'cdkey' => 'application/vnd.mediastation.cdkey',
101          'cdmia' => 'application/cdmi-capability',
102          'cdmic' => 'application/cdmi-container',
103          'cdmid' => 'application/cdmi-domain',
104          'cdmio' => 'application/cdmi-object',
105          'cdmiq' => 'application/cdmi-queue',
106          'cdx' => 'chemical/x-cdx',
107          'cdxml' => 'application/vnd.chemdraw+xml',
108          'cdy' => 'application/vnd.cinderella',
109          'cer' => 'application/pkix-cert',
110          'cfc' => 'application/x-coldfusion',
111          'cfm' => 'application/x-coldfusion',
112          'cgm' => 'image/cgm',
113          'chat' => 'application/x-chat',
114          'chm' => 'application/vnd.ms-htmlhelp',
115          'chrt' => 'application/vnd.kde.kchart',
116          'cif' => 'chemical/x-cif',
117          'cii' => 'application/vnd.anser-web-certificate-issue-initiation',
118          'cil' => 'application/vnd.ms-artgalry',
119          'cla' => 'application/vnd.claymore',
120          'class' => 'application/java-vm',
121          'clkk' => 'application/vnd.crick.clicker.keyboard',
122          'clkp' => 'application/vnd.crick.clicker.palette',
123          'clkt' => 'application/vnd.crick.clicker.template',
124          'clkw' => 'application/vnd.crick.clicker.wordbank',
125          'clkx' => 'application/vnd.crick.clicker',
126          'clp' => 'application/x-msclip',
127          'cmc' => 'application/vnd.cosmocaller',
128          'cmdf' => 'chemical/x-cmdf',
129          'cml' => 'chemical/x-cml',
130          'cmp' => 'application/vnd.yellowriver-custom-menu',
131          'cmx' => 'image/x-cmx',
132          'cod' => 'application/vnd.rim.cod',
133          'com' => 'application/x-msdownload',
134          'conf' => 'text/plain',
135          'cpio' => 'application/x-cpio',
136          'cpp' => 'text/x-c',
137          'cpt' => 'application/mac-compactpro',
138          'crd' => 'application/x-mscardfile',
139          'crl' => 'application/pkix-crl',
140          'crt' => 'application/x-x509-ca-cert',
141          'cryptonote' => 'application/vnd.rig.cryptonote',
142          'cs' => 'text/plain',
143          'csh' => 'application/x-csh',
144          'csml' => 'chemical/x-csml',
145          'csp' => 'application/vnd.commonspace',
146          'css' => 'text/css',
147          'cst' => 'application/x-director',
148          'csv' => 'text/csv',
149          'cu' => 'application/cu-seeme',
150          'curl' => 'text/vnd.curl',
151          'cww' => 'application/prs.cww',
152          'cxt' => 'application/x-director',
153          'cxx' => 'text/x-c',
154          'dae' => 'model/vnd.collada+xml',
155          'daf' => 'application/vnd.mobius.daf',
156          'dataless' => 'application/vnd.fdsn.seed',
157          'davmount' => 'application/davmount+xml',
158          'dcr' => 'application/x-director',
159          'dcurl' => 'text/vnd.curl.dcurl',
160          'dd2' => 'application/vnd.oma.dd2+xml',
161          'ddd' => 'application/vnd.fujixerox.ddd',
162          'deb' => 'application/x-debian-package',
163          'def' => 'text/plain',
164          'deploy' => 'application/octet-stream',
165          'der' => 'application/x-x509-ca-cert',
166          'dfac' => 'application/vnd.dreamfactory',
167          'dic' => 'text/x-c',
168          'dir' => 'application/x-director',
169          'dis' => 'application/vnd.mobius.dis',
170          'dist' => 'application/octet-stream',
171          'distz' => 'application/octet-stream',
172          'djv' => 'image/vnd.djvu',
173          'djvu' => 'image/vnd.djvu',
174          'dll' => 'application/x-msdownload',
175          'dmg' => 'application/octet-stream',
176          'dms' => 'application/octet-stream',
177          'dna' => 'application/vnd.dna',
178          'doc' => 'application/msword',
179          'docm' => 'application/vnd.ms-word.document.macroenabled.12',
180          'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
181          'dot' => 'application/msword',
182          'dotm' => 'application/vnd.ms-word.template.macroenabled.12',
183          'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
184          'dp' => 'application/vnd.osgi.dp',
185          'dpg' => 'application/vnd.dpgraph',
186          'dra' => 'audio/vnd.dra',
187          'dsc' => 'text/prs.lines.tag',
188          'dssc' => 'application/dssc+der',
189          'dtb' => 'application/x-dtbook+xml',
190          'dtd' => 'application/xml-dtd',
191          'dts' => 'audio/vnd.dts',
192          'dtshd' => 'audio/vnd.dts.hd',
193          'dump' => 'application/octet-stream',
194          'dvi' => 'application/x-dvi',
195          'dwf' => 'model/vnd.dwf',
196          'dwg' => 'image/vnd.dwg',
197          'dxf' => 'image/vnd.dxf',
198          'dxp' => 'application/vnd.spotfire.dxp',
199          'dxr' => 'application/x-director',
200          'ecelp4800' => 'audio/vnd.nuera.ecelp4800',
201          'ecelp7470' => 'audio/vnd.nuera.ecelp7470',
202          'ecelp9600' => 'audio/vnd.nuera.ecelp9600',
203          'ecma' => 'application/ecmascript',
204          'edm' => 'application/vnd.novadigm.edm',
205          'edx' => 'application/vnd.novadigm.edx',
206          'efif' => 'application/vnd.picsel',
207          'ei6' => 'application/vnd.pg.osasli',
208          'elc' => 'application/octet-stream',
209          'eml' => 'message/rfc822',
210          'emma' => 'application/emma+xml',
211          'eol' => 'audio/vnd.digital-winds',
212          'eot' => 'application/vnd.ms-fontobject',
213          'eps' => 'application/postscript',
214          'epub' => 'application/epub+zip',
215          'es3' => 'application/vnd.eszigno3+xml',
216          'esf' => 'application/vnd.epson.esf',
217          'et3' => 'application/vnd.eszigno3+xml',
218          'etx' => 'text/x-setext',
219          'exe' => 'application/x-msdownload',
220          'exi' => 'application/exi',
221          'ext' => 'application/vnd.novadigm.ext',
222          'ez' => 'application/andrew-inset',
223          'ez2' => 'application/vnd.ezpix-album',
224          'ez3' => 'application/vnd.ezpix-package',
225          'f' => 'text/x-fortran',
226          'f4v' => 'video/x-f4v',
227          'f77' => 'text/x-fortran',
228          'f90' => 'text/x-fortran',
229          'fbs' => 'image/vnd.fastbidsheet',
230          'fcs' => 'application/vnd.isac.fcs',
231          'fdf' => 'application/vnd.fdf',
232          'fe_launch' => 'application/vnd.denovo.fcselayout-link',
233          'fg5' => 'application/vnd.fujitsu.oasysgp',
234          'fgd' => 'application/x-director',
235          'fh' => 'image/x-freehand',
236          'fh4' => 'image/x-freehand',
237          'fh5' => 'image/x-freehand',
238          'fh7' => 'image/x-freehand',
239          'fhc' => 'image/x-freehand',
240          'fig' => 'application/x-xfig',
241          'fli' => 'video/x-fli',
242          'flo' => 'application/vnd.micrografx.flo',
243          'flv' => 'video/x-flv',
244          'flw' => 'application/vnd.kde.kivio',
245          'flx' => 'text/vnd.fmi.flexstor',
246          'fly' => 'text/vnd.fly',
247          'fm' => 'application/vnd.framemaker',
248          'fnc' => 'application/vnd.frogans.fnc',
249          'for' => 'text/x-fortran',
250          'fpx' => 'image/vnd.fpx',
251          'frame' => 'application/vnd.framemaker',
252          'fsc' => 'application/vnd.fsc.weblaunch',
253          'fst' => 'image/vnd.fst',
254          'ftc' => 'application/vnd.fluxtime.clip',
255          'fti' => 'application/vnd.anser-web-funds-transfer-initiation',
256          'fvt' => 'video/vnd.fvt',
257          'fxp' => 'application/vnd.adobe.fxp',
258          'fxpl' => 'application/vnd.adobe.fxp',
259          'fzs' => 'application/vnd.fuzzysheet',
260          'g2w' => 'application/vnd.geoplan',
261          'g3' => 'image/g3fax',
262          'g3w' => 'application/vnd.geospace',
263          'gac' => 'application/vnd.groove-account',
264          'gdl' => 'model/vnd.gdl',
265          'geo' => 'application/vnd.dynageo',
266          'gex' => 'application/vnd.geometry-explorer',
267          'ggb' => 'application/vnd.geogebra.file',
268          'ggt' => 'application/vnd.geogebra.tool',
269          'ghf' => 'application/vnd.groove-help',
270          'gif' => 'image/gif',
271          'gim' => 'application/vnd.groove-identity-message',
272          'gmx' => 'application/vnd.gmx',
273          'gnumeric' => 'application/x-gnumeric',
274          'gph' => 'application/vnd.flographit',
275          'gqf' => 'application/vnd.grafeq',
276          'gqs' => 'application/vnd.grafeq',
277          'gram' => 'application/srgs',
278          'gre' => 'application/vnd.geometry-explorer',
279          'grv' => 'application/vnd.groove-injector',
280          'grxml' => 'application/srgs+xml',
281          'gsf' => 'application/x-font-ghostscript',
282          'gtar' => 'application/x-gtar',
283          'gtm' => 'application/vnd.groove-tool-message',
284          'gtw' => 'model/vnd.gtw',
285          'gv' => 'text/vnd.graphviz',
286          'gxt' => 'application/vnd.geonext',
287          'h' => 'text/x-c',
288          'h261' => 'video/h261',
289          'h263' => 'video/h263',
290          'h264' => 'video/h264',
291          'hal' => 'application/vnd.hal+xml',
292          'hbci' => 'application/vnd.hbci',
293          'hdf' => 'application/x-hdf',
294          'hh' => 'text/x-c',
295          'hlp' => 'application/winhlp',
296          'hpgl' => 'application/vnd.hp-hpgl',
297          'hpid' => 'application/vnd.hp-hpid',
298          'hps' => 'application/vnd.hp-hps',
299          'hqx' => 'application/mac-binhex40',
300          'hta' => 'application/octet-stream',
301          'htc' => 'text/html',
302          'htke' => 'application/vnd.kenameaapp',
303          'htm' => 'text/html',
304          'html' => 'text/html',
305          'hvd' => 'application/vnd.yamaha.hv-dic',
306          'hvp' => 'application/vnd.yamaha.hv-voice',
307          'hvs' => 'application/vnd.yamaha.hv-script',
308          'i2g' => 'application/vnd.intergeo',
309          'icc' => 'application/vnd.iccprofile',
310          'ice' => 'x-conference/x-cooltalk',
311          'icm' => 'application/vnd.iccprofile',
312          'ico' => 'image/x-icon',
313          'ics' => 'text/calendar',
314          'ief' => 'image/ief',
315          'ifb' => 'text/calendar',
316          'ifm' => 'application/vnd.shana.informed.formdata',
317          'iges' => 'model/iges',
318          'igl' => 'application/vnd.igloader',
319          'igm' => 'application/vnd.insors.igm',
320          'igs' => 'model/iges',
321          'igx' => 'application/vnd.micrografx.igx',
322          'iif' => 'application/vnd.shana.informed.interchange',
323          'imp' => 'application/vnd.accpac.simply.imp',
324          'ims' => 'application/vnd.ms-ims',
325          'in' => 'text/plain',
326          'ini' => 'text/plain',
327          'ipfix' => 'application/ipfix',
328          'ipk' => 'application/vnd.shana.informed.package',
329          'irm' => 'application/vnd.ibm.rights-management',
330          'irp' => 'application/vnd.irepository.package+xml',
331          'iso' => 'application/octet-stream',
332          'itp' => 'application/vnd.shana.informed.formtemplate',
333          'ivp' => 'application/vnd.immervision-ivp',
334          'ivu' => 'application/vnd.immervision-ivu',
335          'jad' => 'text/vnd.sun.j2me.app-descriptor',
336          'jam' => 'application/vnd.jam',
337          'jar' => 'application/java-archive',
338          'java' => 'text/x-java-source',
339          'jisp' => 'application/vnd.jisp',
340          'jlt' => 'application/vnd.hp-jlyt',
341          'jnlp' => 'application/x-java-jnlp-file',
342          'joda' => 'application/vnd.joost.joda-archive',
343          'jpe' => 'image/jpeg',
344          'jpeg' => 'image/jpeg',
345          'jpg' => 'image/jpeg',
346          'jpgm' => 'video/jpm',
347          'jpgv' => 'video/jpeg',
348          'jpm' => 'video/jpm',
349          'js' => 'text/javascript',
350          'json' => 'application/json',
351          'kar' => 'audio/midi',
352          'karbon' => 'application/vnd.kde.karbon',
353          'kfo' => 'application/vnd.kde.kformula',
354          'kia' => 'application/vnd.kidspiration',
355          'kml' => 'application/vnd.google-earth.kml+xml',
356          'kmz' => 'application/vnd.google-earth.kmz',
357          'kne' => 'application/vnd.kinar',
358          'knp' => 'application/vnd.kinar',
359          'kon' => 'application/vnd.kde.kontour',
360          'kpr' => 'application/vnd.kde.kpresenter',
361          'kpt' => 'application/vnd.kde.kpresenter',
362          'ksp' => 'application/vnd.kde.kspread',
363          'ktr' => 'application/vnd.kahootz',
364          'ktx' => 'image/ktx',
365          'ktz' => 'application/vnd.kahootz',
366          'kwd' => 'application/vnd.kde.kword',
367          'kwt' => 'application/vnd.kde.kword',
368          'lasxml' => 'application/vnd.las.las+xml',
369          'latex' => 'application/x-latex',
370          'lbd' => 'application/vnd.llamagraphics.life-balance.desktop',
371          'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml',
372          'les' => 'application/vnd.hhe.lesson-player',
373          'lha' => 'application/octet-stream',
374          'link66' => 'application/vnd.route66.link66+xml',
375          'list' => 'text/plain',
376          'list3820' => 'application/vnd.ibm.modcap',
377          'listafp' => 'application/vnd.ibm.modcap',
378          'log' => 'text/plain',
379          'lostxml' => 'application/lost+xml',
380          'lrf' => 'application/octet-stream',
381          'lrm' => 'application/vnd.ms-lrm',
382          'ltf' => 'application/vnd.frogans.ltf',
383          'lvp' => 'audio/vnd.lucent.voice',
384          'lwp' => 'application/vnd.lotus-wordpro',
385          'lzh' => 'application/octet-stream',
386          'm13' => 'application/x-msmediaview',
387          'm14' => 'application/x-msmediaview',
388          'm1v' => 'video/mpeg',
389          'm21' => 'application/mp21',
390          'm2a' => 'audio/mpeg',
391          'm2v' => 'video/mpeg',
392          'm3a' => 'audio/mpeg',
393          'm3u' => 'audio/x-mpegurl',
394          'm3u8' => 'application/vnd.apple.mpegurl',
395          'm4a' => 'audio/mp4',
396          'm4u' => 'video/vnd.mpegurl',
397          'm4v' => 'video/mp4',
398          'ma' => 'application/mathematica',
399          'mads' => 'application/mads+xml',
400          'mag' => 'application/vnd.ecowin.chart',
401          'maker' => 'application/vnd.framemaker',
402          'man' => 'text/troff',
403          'mathml' => 'application/mathml+xml',
404          'mb' => 'application/mathematica',
405          'mbk' => 'application/vnd.mobius.mbk',
406          'mbox' => 'application/mbox',
407          'mc1' => 'application/vnd.medcalcdata',
408          'mcd' => 'application/vnd.mcd',
409          'mcurl' => 'text/vnd.curl.mcurl',
410          'mdb' => 'application/x-msaccess',
411          'mdi' => 'image/vnd.ms-modi',
412          'me' => 'text/troff',
413          'mesh' => 'model/mesh',
414          'meta4' => 'application/metalink4+xml',
415          'mets' => 'application/mets+xml',
416          'mfm' => 'application/vnd.mfmp',
417          'mgp' => 'application/vnd.osgeo.mapguide.package',
418          'mgz' => 'application/vnd.proteus.magazine',
419          'mid' => 'audio/midi',
420          'midi' => 'audio/midi',
421          'mif' => 'application/vnd.mif',
422          'mime' => 'message/rfc822',
423          'mj2' => 'video/mj2',
424          'mjp2' => 'video/mj2',
425          'mlp' => 'application/vnd.dolby.mlp',
426          'mmd' => 'application/vnd.chipnuts.karaoke-mmd',
427          'mmf' => 'application/vnd.smaf',
428          'mmr' => 'image/vnd.fujixerox.edmics-mmr',
429          'mny' => 'application/x-msmoney',
430          'mobi' => 'application/x-mobipocket-ebook',
431          'mods' => 'application/mods+xml',
432          'mov' => 'video/quicktime',
433          'movie' => 'video/x-sgi-movie',
434          'mp2' => 'audio/mpeg',
435          'mp21' => 'application/mp21',
436          'mp2a' => 'audio/mpeg',
437          'mp3' => 'audio/mpeg',
438          'mp4' => 'video/mp4',
439          'mp4a' => 'audio/mp4',
440          'mp4s' => 'application/mp4',
441          'mp4v' => 'video/mp4',
442          'mpc' => 'application/vnd.mophun.certificate',
443          'mpe' => 'video/mpeg',
444          'mpeg' => 'video/mpeg',
445          'mpg' => 'video/mpeg',
446          'mpg4' => 'video/mp4',
447          'mpga' => 'audio/mpeg',
448          'mpkg' => 'application/vnd.apple.installer+xml',
449          'mpm' => 'application/vnd.blueice.multipass',
450          'mpn' => 'application/vnd.mophun.application',
451          'mpp' => 'application/vnd.ms-project',
452          'mpt' => 'application/vnd.ms-project',
453          'mpy' => 'application/vnd.ibm.minipay',
454          'mqy' => 'application/vnd.mobius.mqy',
455          'mrc' => 'application/marc',
456          'mrcx' => 'application/marcxml+xml',
457          'ms' => 'text/troff',
458          'mscml' => 'application/mediaservercontrol+xml',
459          'mseed' => 'application/vnd.fdsn.mseed',
460          'mseq' => 'application/vnd.mseq',
461          'msf' => 'application/vnd.epson.msf',
462          'msh' => 'model/mesh',
463          'msi' => 'application/x-msdownload',
464          'msl' => 'application/vnd.mobius.msl',
465          'msty' => 'application/vnd.muvee.style',
466          'mts' => 'model/vnd.mts',
467          'mus' => 'application/vnd.musician',
468          'musicxml' => 'application/vnd.recordare.musicxml+xml',
469          'mvb' => 'application/x-msmediaview',
470          'mwf' => 'application/vnd.mfer',
471          'mxf' => 'application/mxf',
472          'mxl' => 'application/vnd.recordare.musicxml',
473          'mxml' => 'application/xv+xml',
474          'mxs' => 'application/vnd.triscape.mxs',
475          'mxu' => 'video/vnd.mpegurl',
476          'n-gage' => 'application/vnd.nokia.n-gage.symbian.install',
477          'n3' => 'text/n3',
478          'nb' => 'application/mathematica',
479          'nbp' => 'application/vnd.wolfram.player',
480          'nc' => 'application/x-netcdf',
481          'ncx' => 'application/x-dtbncx+xml',
482          'ngdat' => 'application/vnd.nokia.n-gage.data',
483          'nlu' => 'application/vnd.neurolanguage.nlu',
484          'nml' => 'application/vnd.enliven',
485          'nnd' => 'application/vnd.noblenet-directory',
486          'nns' => 'application/vnd.noblenet-sealer',
487          'nnw' => 'application/vnd.noblenet-web',
488          'npx' => 'image/vnd.net-fpx',
489          'nsf' => 'application/vnd.lotus-notes',
490          'oa2' => 'application/vnd.fujitsu.oasys2',
491          'oa3' => 'application/vnd.fujitsu.oasys3',
492          'oas' => 'application/vnd.fujitsu.oasys',
493          'obd' => 'application/x-msbinder',
494          'oda' => 'application/oda',
495          'odb' => 'application/vnd.oasis.opendocument.database',
496          'odc' => 'application/vnd.oasis.opendocument.chart',
497          'odf' => 'application/vnd.oasis.opendocument.formula',
498          'odft' => 'application/vnd.oasis.opendocument.formula-template',
499          'odg' => 'application/vnd.oasis.opendocument.graphics',
500          'odi' => 'application/vnd.oasis.opendocument.image',
501          'odm' => 'application/vnd.oasis.opendocument.text-master',
502          'odp' => 'application/vnd.oasis.opendocument.presentation',
503          'ods' => 'application/vnd.oasis.opendocument.spreadsheet',
504          'odt' => 'application/vnd.oasis.opendocument.text',
505          'oga' => 'audio/ogg',
506          'ogg' => 'audio/ogg',
507          'ogv' => 'video/ogg',
508          'ogx' => 'application/ogg',
509          'onepkg' => 'application/onenote',
510          'onetmp' => 'application/onenote',
511          'onetoc' => 'application/onenote',
512          'onetoc2' => 'application/onenote',
513          'opf' => 'application/oebps-package+xml',
514          'oprc' => 'application/vnd.palm',
515          'org' => 'application/vnd.lotus-organizer',
516          'osf' => 'application/vnd.yamaha.openscoreformat',
517          'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml',
518          'otc' => 'application/vnd.oasis.opendocument.chart-template',
519          'otf' => 'application/x-font-otf',
520          'otg' => 'application/vnd.oasis.opendocument.graphics-template',
521          'oth' => 'application/vnd.oasis.opendocument.text-web',
522          'oti' => 'application/vnd.oasis.opendocument.image-template',
523          'otp' => 'application/vnd.oasis.opendocument.presentation-template',
524          'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',
525          'ott' => 'application/vnd.oasis.opendocument.text-template',
526          'oxt' => 'application/vnd.openofficeorg.extension',
527          'p' => 'text/x-pascal',
528          'p10' => 'application/pkcs10',
529          'p12' => 'application/x-pkcs12',
530          'p7b' => 'application/x-pkcs7-certificates',
531          'p7c' => 'application/pkcs7-mime',
532          'p7m' => 'application/pkcs7-mime',
533          'p7r' => 'application/x-pkcs7-certreqresp',
534          'p7s' => 'application/pkcs7-signature',
535          'p8' => 'application/pkcs8',
536          'pas' => 'text/x-pascal',
537          'paw' => 'application/vnd.pawaafile',
538          'pbd' => 'application/vnd.powerbuilder6',
539          'pbm' => 'image/x-portable-bitmap',
540          'pcf' => 'application/x-font-pcf',
541          'pcl' => 'application/vnd.hp-pcl',
542          'pclxl' => 'application/vnd.hp-pclxl',
543          'pct' => 'image/x-pict',
544          'pcurl' => 'application/vnd.curl.pcurl',
545          'pcx' => 'image/x-pcx',
546          'pdb' => 'application/vnd.palm',
547          'pdf' => 'application/pdf',
548          'pfa' => 'application/x-font-type1',
549          'pfb' => 'application/x-font-type1',
550          'pfm' => 'application/x-font-type1',
551          'pfr' => 'application/font-tdpfr',
552          'pfx' => 'application/x-pkcs12',
553          'pgm' => 'image/x-portable-graymap',
554          'pgn' => 'application/x-chess-pgn',
555          'pgp' => 'application/pgp-encrypted',
556          'php' => 'text/x-php',
557          'phps' => 'application/x-httpd-phps',
558          'pic' => 'image/x-pict',
559          'pkg' => 'application/octet-stream',
560          'pki' => 'application/pkixcmp',
561          'pkipath' => 'application/pkix-pkipath',
562          'plb' => 'application/vnd.3gpp.pic-bw-large',
563          'plc' => 'application/vnd.mobius.plc',
564          'plf' => 'application/vnd.pocketlearn',
565          'pls' => 'application/pls+xml',
566          'pml' => 'application/vnd.ctc-posml',
567          'png' => 'image/png',
568          'pnm' => 'image/x-portable-anymap',
569          'portpkg' => 'application/vnd.macports.portpkg',
570          'pot' => 'application/vnd.ms-powerpoint',
571          'potm' => 'application/vnd.ms-powerpoint.template.macroenabled.12',
572          'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',
573          'ppam' => 'application/vnd.ms-powerpoint.addin.macroenabled.12',
574          'ppd' => 'application/vnd.cups-ppd',
575          'ppm' => 'image/x-portable-pixmap',
576          'pps' => 'application/vnd.ms-powerpoint',
577          'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroenabled.12',
578          'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
579          'ppt' => 'application/vnd.ms-powerpoint',
580          'pptm' => 'application/vnd.ms-powerpoint.presentation.macroenabled.12',
581          'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
582          'pqa' => 'application/vnd.palm',
583          'prc' => 'application/x-mobipocket-ebook',
584          'pre' => 'application/vnd.lotus-freelance',
585          'prf' => 'application/pics-rules',
586          'ps' => 'application/postscript',
587          'psb' => 'application/vnd.3gpp.pic-bw-small',
588          'psd' => 'image/vnd.adobe.photoshop',
589          'psf' => 'application/x-font-linux-psf',
590          'pskcxml' => 'application/pskc+xml',
591          'ptid' => 'application/vnd.pvi.ptid1',
592          'pub' => 'application/x-mspublisher',
593          'pvb' => 'application/vnd.3gpp.pic-bw-var',
594          'pwn' => 'application/vnd.3m.post-it-notes',
595          'pya' => 'audio/vnd.ms-playready.media.pya',
596          'pyv' => 'video/vnd.ms-playready.media.pyv',
597          'qam' => 'application/vnd.epson.quickanime',
598          'qbo' => 'application/vnd.intu.qbo',
599          'qfx' => 'application/vnd.intu.qfx',
600          'qps' => 'application/vnd.publishare-delta-tree',
601          'qt' => 'video/quicktime',
602          'qwd' => 'application/vnd.quark.quarkxpress',
603          'qwt' => 'application/vnd.quark.quarkxpress',
604          'qxb' => 'application/vnd.quark.quarkxpress',
605          'qxd' => 'application/vnd.quark.quarkxpress',
606          'qxl' => 'application/vnd.quark.quarkxpress',
607          'qxt' => 'application/vnd.quark.quarkxpress',
608          'ra' => 'audio/x-pn-realaudio',
609          'ram' => 'audio/x-pn-realaudio',
610          'rar' => 'application/x-rar-compressed',
611          'ras' => 'image/x-cmu-raster',
612          'rb' => 'text/plain',
613          'rcprofile' => 'application/vnd.ipunplugged.rcprofile',
614          'rdf' => 'application/rdf+xml',
615          'rdz' => 'application/vnd.data-vision.rdz',
616          'rep' => 'application/vnd.businessobjects',
617          'res' => 'application/x-dtbresource+xml',
618          'resx' => 'text/xml',
619          'rgb' => 'image/x-rgb',
620          'rif' => 'application/reginfo+xml',
621          'rip' => 'audio/vnd.rip',
622          'rl' => 'application/resource-lists+xml',
623          'rlc' => 'image/vnd.fujixerox.edmics-rlc',
624          'rld' => 'application/resource-lists-diff+xml',
625          'rm' => 'application/vnd.rn-realmedia',
626          'rmi' => 'audio/midi',
627          'rmp' => 'audio/x-pn-realaudio-plugin',
628          'rms' => 'application/vnd.jcp.javame.midlet-rms',
629          'rnc' => 'application/relax-ng-compact-syntax',
630          'roff' => 'text/troff',
631          'rp9' => 'application/vnd.cloanto.rp9',
632          'rpss' => 'application/vnd.nokia.radio-presets',
633          'rpst' => 'application/vnd.nokia.radio-preset',
634          'rq' => 'application/sparql-query',
635          'rs' => 'application/rls-services+xml',
636          'rsd' => 'application/rsd+xml',
637          'rss' => 'application/rss+xml',
638          'rtf' => 'application/rtf',
639          'rtx' => 'text/richtext',
640          's' => 'text/x-asm',
641          'saf' => 'application/vnd.yamaha.smaf-audio',
642          'sbml' => 'application/sbml+xml',
643          'sc' => 'application/vnd.ibm.secure-container',
644          'scd' => 'application/x-msschedule',
645          'scm' => 'application/vnd.lotus-screencam',
646          'scq' => 'application/scvp-cv-request',
647          'scs' => 'application/scvp-cv-response',
648          'scurl' => 'text/vnd.curl.scurl',
649          'sda' => 'application/vnd.stardivision.draw',
650          'sdc' => 'application/vnd.stardivision.calc',
651          'sdd' => 'application/vnd.stardivision.impress',
652          'sdkd' => 'application/vnd.solent.sdkm+xml',
653          'sdkm' => 'application/vnd.solent.sdkm+xml',
654          'sdp' => 'application/sdp',
655          'sdw' => 'application/vnd.stardivision.writer',
656          'see' => 'application/vnd.seemail',
657          'seed' => 'application/vnd.fdsn.seed',
658          'sema' => 'application/vnd.sema',
659          'semd' => 'application/vnd.semd',
660          'semf' => 'application/vnd.semf',
661          'ser' => 'application/java-serialized-object',
662          'setpay' => 'application/set-payment-initiation',
663          'setreg' => 'application/set-registration-initiation',
664          'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data',
665          'sfs' => 'application/vnd.spotfire.sfs',
666          'sgl' => 'application/vnd.stardivision.writer-global',
667          'sgm' => 'text/sgml',
668          'sgml' => 'text/sgml',
669          'sh' => 'application/x-sh',
670          'shar' => 'application/x-shar',
671          'shf' => 'application/shf+xml',
672          'sig' => 'application/pgp-signature',
673          'silo' => 'model/mesh',
674          'sis' => 'application/vnd.symbian.install',
675          'sisx' => 'application/vnd.symbian.install',
676          'sit' => 'application/x-stuffit',
677          'sitx' => 'application/x-stuffitx',
678          'skd' => 'application/vnd.koan',
679          'skm' => 'application/vnd.koan',
680          'skp' => 'application/vnd.koan',
681          'skt' => 'application/vnd.koan',
682          'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12',
683          'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide',
684          'slt' => 'application/vnd.epson.salt',
685          'sm' => 'application/vnd.stepmania.stepchart',
686          'smf' => 'application/vnd.stardivision.math',
687          'smi' => 'application/smil+xml',
688          'smil' => 'application/smil+xml',
689          'snd' => 'audio/basic',
690          'snf' => 'application/x-font-snf',
691          'so' => 'application/octet-stream',
692          'spc' => 'application/x-pkcs7-certificates',
693          'spf' => 'application/vnd.yamaha.smaf-phrase',
694          'spl' => 'application/x-futuresplash',
695          'spot' => 'text/vnd.in3d.spot',
696          'spp' => 'application/scvp-vp-response',
697          'spq' => 'application/scvp-vp-request',
698          'spx' => 'audio/ogg',
699          'src' => 'application/x-wais-source',
700          'sru' => 'application/sru+xml',
701          'srx' => 'application/sparql-results+xml',
702          'sse' => 'application/vnd.kodak-descriptor',
703          'ssf' => 'application/vnd.epson.ssf',
704          'ssml' => 'application/ssml+xml',
705          'st' => 'application/vnd.sailingtracker.track',
706          'stc' => 'application/vnd.sun.xml.calc.template',
707          'std' => 'application/vnd.sun.xml.draw.template',
708          'stf' => 'application/vnd.wt.stf',
709          'sti' => 'application/vnd.sun.xml.impress.template',
710          'stk' => 'application/hyperstudio',
711          'stl' => 'application/vnd.ms-pki.stl',
712          'str' => 'application/vnd.pg.format',
713          'stw' => 'application/vnd.sun.xml.writer.template',
714          'sub' => 'image/vnd.dvb.subtitle',
715          'sus' => 'application/vnd.sus-calendar',
716          'susp' => 'application/vnd.sus-calendar',
717          'sv4cpio' => 'application/x-sv4cpio',
718          'sv4crc' => 'application/x-sv4crc',
719          'svc' => 'application/vnd.dvb.service',
720          'svd' => 'application/vnd.svd',
721          'svg' => 'image/svg+xml',
722          'svgz' => 'image/svg+xml',
723          'swa' => 'application/x-director',
724          'swf' => 'application/x-shockwave-flash',
725          'swi' => 'application/vnd.aristanetworks.swi',
726          'sxc' => 'application/vnd.sun.xml.calc',
727          'sxd' => 'application/vnd.sun.xml.draw',
728          'sxg' => 'application/vnd.sun.xml.writer.global',
729          'sxi' => 'application/vnd.sun.xml.impress',
730          'sxm' => 'application/vnd.sun.xml.math',
731          'sxw' => 'application/vnd.sun.xml.writer',
732          't' => 'text/troff',
733          'tao' => 'application/vnd.tao.intent-module-archive',
734          'tar' => 'application/x-tar',
735          'tcap' => 'application/vnd.3gpp2.tcap',
736          'tcl' => 'application/x-tcl',
737          'teacher' => 'application/vnd.smart.teacher',
738          'tei' => 'application/tei+xml',
739          'teicorpus' => 'application/tei+xml',
740          'tex' => 'application/x-tex',
741          'texi' => 'application/x-texinfo',
742          'texinfo' => 'application/x-texinfo',
743          'text' => 'text/plain',
744          'tfi' => 'application/thraud+xml',
745          'tfm' => 'application/x-tex-tfm',
746          'thmx' => 'application/vnd.ms-officetheme',
747          'tif' => 'image/tiff',
748          'tiff' => 'image/tiff',
749          'tmo' => 'application/vnd.tmobile-livetv',
750          'torrent' => 'application/x-bittorrent',
751          'tpl' => 'application/vnd.groove-tool-template',
752          'tpt' => 'application/vnd.trid.tpt',
753          'tr' => 'text/troff',
754          'tra' => 'application/vnd.trueapp',
755          'trm' => 'application/x-msterminal',
756          'tsd' => 'application/timestamped-data',
757          'tsv' => 'text/tab-separated-values',
758          'ttc' => 'application/x-font-ttf',
759          'ttf' => 'application/x-font-ttf',
760          'ttl' => 'text/turtle',
761          'twd' => 'application/vnd.simtech-mindmapper',
762          'twds' => 'application/vnd.simtech-mindmapper',
763          'txd' => 'application/vnd.genomatix.tuxedo',
764          'txf' => 'application/vnd.mobius.txf',
765          'txt' => 'text/plain',
766          'u32' => 'application/x-authorware-bin',
767          'udeb' => 'application/x-debian-package',
768          'ufd' => 'application/vnd.ufdl',
769          'ufdl' => 'application/vnd.ufdl',
770          'umj' => 'application/vnd.umajin',
771          'unityweb' => 'application/vnd.unity',
772          'uoml' => 'application/vnd.uoml+xml',
773          'uri' => 'text/uri-list',
774          'uris' => 'text/uri-list',
775          'urls' => 'text/uri-list',
776          'ustar' => 'application/x-ustar',
777          'utz' => 'application/vnd.uiq.theme',
778          'uu' => 'text/x-uuencode',
779          'uva' => 'audio/vnd.dece.audio',
780          'uvd' => 'application/vnd.dece.data',
781          'uvf' => 'application/vnd.dece.data',
782          'uvg' => 'image/vnd.dece.graphic',
783          'uvh' => 'video/vnd.dece.hd',
784          'uvi' => 'image/vnd.dece.graphic',
785          'uvm' => 'video/vnd.dece.mobile',
786          'uvp' => 'video/vnd.dece.pd',
787          'uvs' => 'video/vnd.dece.sd',
788          'uvt' => 'application/vnd.dece.ttml+xml',
789          'uvu' => 'video/vnd.uvvu.mp4',
790          'uvv' => 'video/vnd.dece.video',
791          'uvva' => 'audio/vnd.dece.audio',
792          'uvvd' => 'application/vnd.dece.data',
793          'uvvf' => 'application/vnd.dece.data',
794          'uvvg' => 'image/vnd.dece.graphic',
795          'uvvh' => 'video/vnd.dece.hd',
796          'uvvi' => 'image/vnd.dece.graphic',
797          'uvvm' => 'video/vnd.dece.mobile',
798          'uvvp' => 'video/vnd.dece.pd',
799          'uvvs' => 'video/vnd.dece.sd',
800          'uvvt' => 'application/vnd.dece.ttml+xml',
801          'uvvu' => 'video/vnd.uvvu.mp4',
802          'uvvv' => 'video/vnd.dece.video',
803          'uvvx' => 'application/vnd.dece.unspecified',
804          'uvx' => 'application/vnd.dece.unspecified',
805          'vcd' => 'application/x-cdlink',
806          'vcf' => 'text/x-vcard',
807          'vcg' => 'application/vnd.groove-vcard',
808          'vcs' => 'text/x-vcalendar',
809          'vcx' => 'application/vnd.vcx',
810          'vis' => 'application/vnd.visionary',
811          'viv' => 'video/vnd.vivo',
812          'vor' => 'application/vnd.stardivision.writer',
813          'vox' => 'application/x-authorware-bin',
814          'vrml' => 'model/vrml',
815          'vsd' => 'application/vnd.visio',
816          'vsf' => 'application/vnd.vsf',
817          'vss' => 'application/vnd.visio',
818          'vst' => 'application/vnd.visio',
819          'vsw' => 'application/vnd.visio',
820          'vtu' => 'model/vnd.vtu',
821          'vxml' => 'application/voicexml+xml',
822          'w3d' => 'application/x-director',
823          'wad' => 'application/x-doom',
824          'wav' => 'audio/x-wav',
825          'wax' => 'audio/x-ms-wax',
826          'wbmp' => 'image/vnd.wap.wbmp',
827          'wbs' => 'application/vnd.criticaltools.wbs+xml',
828          'wbxml' => 'application/vnd.wap.wbxml',
829          'wcm' => 'application/vnd.ms-works',
830          'wdb' => 'application/vnd.ms-works',
831          'weba' => 'audio/webm',
832          'webm' => 'video/webm',
833          'webp' => 'image/webp',
834          'wg' => 'application/vnd.pmi.widget',
835          'wgt' => 'application/widget',
836          'wks' => 'application/vnd.ms-works',
837          'wm' => 'video/x-ms-wm',
838          'wma' => 'audio/x-ms-wma',
839          'wmd' => 'application/x-ms-wmd',
840          'wmf' => 'application/x-msmetafile',
841          'wml' => 'text/vnd.wap.wml',
842          'wmlc' => 'application/vnd.wap.wmlc',
843          'wmls' => 'text/vnd.wap.wmlscript',
844          'wmlsc' => 'application/vnd.wap.wmlscriptc',
845          'wmv' => 'video/x-ms-wmv',
846          'wmx' => 'video/x-ms-wmx',
847          'wmz' => 'application/x-ms-wmz',
848          'woff' => 'application/x-font-woff',
849          'wpd' => 'application/vnd.wordperfect',
850          'wpl' => 'application/vnd.ms-wpl',
851          'wps' => 'application/vnd.ms-works',
852          'wqd' => 'application/vnd.wqd',
853          'wri' => 'application/x-mswrite',
854          'wrl' => 'model/vrml',
855          'wsdl' => 'application/wsdl+xml',
856          'wspolicy' => 'application/wspolicy+xml',
857          'wtb' => 'application/vnd.webturbo',
858          'wvx' => 'video/x-ms-wvx',
859          'x32' => 'application/x-authorware-bin',
860          'x3d' => 'application/vnd.hzn-3d-crossword',
861          'xap' => 'application/x-silverlight-app',
862          'xar' => 'application/vnd.xara',
863          'xbap' => 'application/x-ms-xbap',
864          'xbd' => 'application/vnd.fujixerox.docuworks.binder',
865          'xbm' => 'image/x-xbitmap',
866          'xdf' => 'application/xcap-diff+xml',
867          'xdm' => 'application/vnd.syncml.dm+xml',
868          'xdp' => 'application/vnd.adobe.xdp+xml',
869          'xdssc' => 'application/dssc+xml',
870          'xdw' => 'application/vnd.fujixerox.docuworks',
871          'xenc' => 'application/xenc+xml',
872          'xer' => 'application/patch-ops-error+xml',
873          'xfdf' => 'application/vnd.adobe.xfdf',
874          'xfdl' => 'application/vnd.xfdl',
875          'xht' => 'application/xhtml+xml',
876          'xhtml' => 'application/xhtml+xml',
877          'xhvml' => 'application/xv+xml',
878          'xif' => 'image/vnd.xiff',
879          'xla' => 'application/vnd.ms-excel',
880          'xlam' => 'application/vnd.ms-excel.addin.macroenabled.12',
881          'xlc' => 'application/vnd.ms-excel',
882          'xlm' => 'application/vnd.ms-excel',
883          'xls' => 'application/vnd.ms-excel',
884          'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroenabled.12',
885          'xlsm' => 'application/vnd.ms-excel.sheet.macroenabled.12',
886          'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
887          'xlt' => 'application/vnd.ms-excel',
888          'xltm' => 'application/vnd.ms-excel.template.macroenabled.12',
889          'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
890          'xlw' => 'application/vnd.ms-excel',
891          'xml' => 'application/xml',
892          'xo' => 'application/vnd.olpc-sugar',
893          'xop' => 'application/xop+xml',
894          'xpi' => 'application/x-xpinstall',
895          'xpm' => 'image/x-xpixmap',
896          'xpr' => 'application/vnd.is-xpr',
897          'xps' => 'application/vnd.ms-xpsdocument',
898          'xpw' => 'application/vnd.intercon.formnet',
899          'xpx' => 'application/vnd.intercon.formnet',
900          'xsl' => 'application/xml',
901          'xslt' => 'application/xslt+xml',
902          'xsm' => 'application/vnd.syncml+xml',
903          'xspf' => 'application/xspf+xml',
904          'xul' => 'application/vnd.mozilla.xul+xml',
905          'xvm' => 'application/xv+xml',
906          'xvml' => 'application/xv+xml',
907          'xwd' => 'image/x-xwindowdump',
908          'xyz' => 'chemical/x-xyz',
909          'yaml' => 'text/yaml',
910          'yang' => 'application/yang',
911          'yin' => 'application/yin+xml',
912          'yml' => 'text/yaml',
913          'zaz' => 'application/vnd.zzazz.deck+xml',
914          'zip' => 'application/zip',
915          'zir' => 'application/vnd.zul',
916          'zirz' => 'application/vnd.zul',
917          'zmm' => 'application/vnd.handheld-entertainment+xml'
918      );
919   
920      /**
921       * Get a singleton instance of the class
922       *
923       * @return self
924       * @codeCoverageIgnore
925       */
926      public static function getInstance()
927      {
928          if (!self::$instance) {
929              self::$instance = new self();
930          }
931   
932          return self::$instance;
933      }
934   
935      /**
936       * Get a mimetype value from a file extension
937       *
938       * @param string $extension File extension
939       *
940       * @return string|null
941       *
942       */
943      public function fromExtension($extension)
944      {
945          $extension = strtolower($extension);
946   
947          return isset($this->mimetypes[$extension])
948              ? $this->mimetypes[$extension]
949              : null;
950      }
951   
952      /**
953       * Get a mimetype from a filename
954       *
955       * @param string $filename Filename to generate a mimetype from
956       *
957       * @return string|null
958       */
959      public function fromFilename($filename)
960      {
961          return $this->fromExtension(pathinfo($filename, PATHINFO_EXTENSION));
962      }
963  }
964