Hallo,
ich suche vergeblich nach einer zuverlässigen Methode den mime type einer Datei zu erhalten.
Problem, wenn aus einer Liste kein entprechendes Mime gefunden wird, wird eine PHP Datei zum Download angeboten. So im Beispiel csv:
Diese Script führt bei mir zu einer Fehlermeldung, dass die Funktion nicht vorhanden ist
Da auch get_content_type abgeschafft wurde stehe ich jetzt einfach im Regen.
Hat mir jemand eine Lösung?
ich suche vergeblich nach einer zuverlässigen Methode den mime type einer Datei zu erhalten.
Problem, wenn aus einer Liste kein entprechendes Mime gefunden wird, wird eine PHP Datei zum Download angeboten. So im Beispiel csv:
PHP-Code:
$mimes = array(
"csv" => "application/csv"
,"pdf"=>"application/pdf"
,"exe"=>"application/octet-stream"
,"zip"=>"application/zip"
,"docx"=>"application/msword"
,"doc"=>"application/msword"
,"xls"=>"application/vnd.ms-excel"
,"ppt"=>"application/vnd.ms-powerpoint"
,"gif"=>"image/gif"
,"png"=>"image/png"
,"jpeg"=>"image/jpg"
,"jpg"=>"image/jpg"
,"mp3"=>"audio/mpeg"
,"wav"=>"audio/x-wav"
,"mpeg"=>"video/mpeg"
,"mpg"=>"video/mpeg"
,"mpe"=>"video/mpeg"
,"mov"=>"video/quicktime"
,"avi"=>"video/x-msvideo"
,"3gp"=>"video/3gpp"
,"css"=>"text/css"
,"jsc"=>"application/javascript"
,"js"=>"application/javascript"
,"php"=>"text/html"
,"htm"=>"text/html"
,"html"=>"text/html"
);
$temp = explode(".", $_GET['file']);
$ext = strtolower(end($temp));
$mime_type = $mimes[$ext];
header("Content-type: ".$mime_type."");
readfile($_GET['file']);
<?php
$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension
foreach (glob("*") as $filename) {
echo finfo_file($finfo, $filename) . "\n";
}
finfo_close($finfo);
?>
Da auch get_content_type abgeschafft wurde stehe ich jetzt einfach im Regen.
Hat mir jemand eine Lösung?