29
filemimetype
file_mime_type
SYNOPSIS
file_mime_type($file, $encoding=true)
DESCRIPTION
file_mime_type
retourne le type MIME du fichier $file
; e.g. text/plain.
Si $encoding
vaut true
, file_mime_type
ajoute l'encodage utilisé pour les caractères des données, e.g. text/plain; charset=utf-8.
Le type MIME et le type d'encodage sont séparés par un ; (POINT-VIRGULE) suivi d'un caractère d'espacement (ESPACE).
CODE
- function file_mime_type($file, $encoding=true) {
- $mime=false;
- if (function_exists('finfo_file')) {
- $finfo = finfo_open(FILEINFO_MIME);
- $mime = @finfo_file($finfo, $file);
- finfo_close($finfo);
- }
- else if (substr(PHP_OS, 0, 3) == 'WIN') {
- $mime = mime_content_type($file);
- }
- else {
- $file = escapeshellarg($file);
- $cmd = "file -iL $file";
- exec($cmd, $output, $r);
- if ($r == 0) {
- $mime = substr($output[0], strpos($output[0], ': ')+2);
- }
- }
- if (!$mime) {
- return false;
- }
- if ($encoding) {
- return $mime;
- }
- return substr($mime, 0, strpos($mime, '; '));
- }
Commentaires