Re: PHP to get File Type
| From: | uaca man | Date: | Tue, 14 Oct 2008 14:12:43 +0000 |
| Subject: | Re: PHP to get File Type | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-281874@lists.php.net to get a copy of this message | ||
There is a more elegant way:
http://br2.php.net/manual/en/function.mime-content-type.php
and the preferred way:
http://br2.php.net/manual/en/function.finfo-file.php
Angelo
2008/10/14 Aschwin Wesselius <aschwin@illuminated.nl>
> Manoj Singh wrote:
>
>> Hello All,
>> Is there any function in PHP to get the file/Mime type of any file?
>>
>> Any help will be appreciated.
>>
> Hi,
>
> There are better and more elegant ways to do this, but I'm not aware of
> them.
>
> Here is what I use most of the time. You only use the filename as $value
> for get_mimetype().
>
> function get_file_extension($file) {
>
> return array_pop(explode('.',$file));
> }
>
> function get_mimetype($value='') {
>
> $ct['htm'] = 'text/html';
> $ct['html'] = 'text/html';
> $ct['txt'] = 'text/plain';
> $ct['asc'] = 'text/plain';
> $ct['bmp'] = 'image/bmp';
> $ct['gif'] = 'image/gif';
> $ct['jpeg'] = 'image/jpeg';
> $ct['jpg'] = 'image/jpeg';
> $ct['jpe'] = 'image/jpeg';
> $ct['png'] = 'image/png';
> $ct['ico'] = 'image/vnd.microsoft.icon';
> $ct['mpeg'] = 'video/mpeg';
> $ct['mpg'] = 'video/mpeg';
> $ct['mpe'] = 'video/mpeg';
> $ct['qt'] = 'video/quicktime';
> $ct['mov'] = 'video/quicktime';
> $ct['avi'] = 'video/x-msvideo';
> $ct['wmv'] = 'video/x-ms-wmv';
> $ct['mp2'] = 'audio/mpeg';
> $ct['mp3'] = 'audio/mpeg';
> $ct['rm'] = 'audio/x-pn-realaudio';
> $ct['ram'] = 'audio/x-pn-realaudio';
> $ct['rpm'] = 'audio/x-pn-realaudio-plugin';
> $ct['ra'] = 'audio/x-realaudio';
> $ct['wav'] = 'audio/x-wav';
> $ct['css'] = 'text/css';
> $ct['zip'] = 'application/zip';
> $ct['pdf'] = 'application/pdf';
> $ct['doc'] = 'application/msword';
> $ct['bin'] = 'application/octet-stream';
> $ct['exe'] = 'application/octet-stream';
> $ct['class']= 'application/octet-stream';
> $ct['dll'] = 'application/octet-stream';
> $ct['xls'] = 'application/vnd.ms-excel';
> $ct['ppt'] = 'application/vnd.ms-powerpoint';
> $ct['wbxml']= 'application/vnd.wap.wbxml';
> $ct['wmlc'] = 'application/vnd.wap.wmlc';
> $ct['wmlsc']= 'application/vnd.wap.wmlscriptc';
> $ct['dvi'] = 'application/x-dvi';
> $ct['spl'] = 'application/x-futuresplash';
> $ct['gtar'] = 'application/x-gtar';
> $ct['gzip'] = 'application/x-gzip';
> $ct['js'] = 'application/x-javascript';
> $ct['swf'] = 'application/x-shockwave-flash';
> $ct['tar'] = 'application/x-tar';
> $ct['xhtml']= 'application/xhtml+xml';
> $ct['au'] = 'audio/basic';
> $ct['snd'] = 'audio/basic';
> $ct['midi'] = 'audio/midi';
> $ct['mid'] = 'audio/midi';
> $ct['m3u'] = 'audio/x-mpegurl';
> $ct['tiff'] = 'image/tiff';
> $ct['tif'] = 'image/tiff';
> $ct['rtf'] = 'text/rtf';
> $ct['wml'] = 'text/vnd.wap.wml';
> $ct['wmls'] = 'text/vnd.wap.wmlscript';
> $ct['xsl'] = 'text/xml';
> $ct['xml'] = 'text/xml';
>
> $extension = get_file_extension($value);
>
> if (!$type = $ct[strtolower($extension)]) {
>
> $type = 'text/html';
> }
>
> return $type;
>
> }
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>