I'm calling this bellow method as GetID3MIMEtype('test.docx') That method change file type to "application/zip" but i'm not upload any zip file this not correct file type.
function GetID3MIMEtype($filename) {
$filename = realpath($filename);
$getID3 = new getID3;
$ThisFileInfo = $getID3->analyze($filename);
getid3_lib::CopyTagsToComments($ThisFileInfo);
log_error(print_r($ThisFileInfo['mime_type'], true));
if (empty($ThisFileInfo['error'])) {
if ($ThisFileInfo['fileformat']) {
$temp = explode("/", $ThisFileInfo['mime_type']);
$mime = $temp[0]."/".$ThisFileInfo['fileformat'];
}
else
$mime = $ThisFileInfo['mime_type'];
return $mime;
}
else {
log_error("ID 3 Error - ".$filename." - ".print_r($ThisFileInfo['error'], true));
return false;
}
}
Question
A .docx
file is a zip file - try renaming it to .zip
and opening it. You'll see it's a collection of XML and other embedded documents.
That said, getId3
is designed to be used on Multimedia file types - video and audio files - as it says on the project page
It's a Mime Type not a Mine Type. It's similar to a file extension but more powerful. It lets different applications (possibly on different platforms) know how a specific file should be handled. Try reading this page for more information.