//------------- Функция определения типа файла -----------------//
function FileExtension($file, $name=''){
$goodmime= array('image/jpeg', 'image/png', 'image/gif', 'image/bmp',
'text/plain', 'application/pdf',
'text/vnd.sun.j2me.app-descriptor', 'application/java-archive',
'audio/x-wav', 'audio/x-ms-wma', 'audio/mpeg', 'video/3gpp', 'video/x-ms-video', 'video/x-ms-wmv', 'video/mpeg',
'application/x-zip-compressed', 'application/x-rar-compressed', 'application/x-gtar', 'application/x-gzip');
$submime = array('rar'=>'application/x-rar-compressed', 'zip'=>'application/x-zip-compressed', 'mp3'=>'audio/mpeg', 'png'=>'image/png'); // дописываем расширения mime type которых сервер определяет с ошибкой
$realmime = function_exists('mime_content_type') ? trim(mime_content_type($file)) : '';
$filemime = ($realmime!='' AND in_array($realmime, $goodmime)) ? $realmime : 'application/octet-stream';
if($filemime=='text/plain' AND $name!=''){
$ext = explode('.', trim($name));
$ext = strtolower($ext[count($ext)-1]);
$filemime = ($submime[$ext]!='') ? $submime[$ext] : $filemime;
}
return $filemime;
}