Sem*_*mas 18
$mime = mime_content_type($file);
if(strstr($mime, "video/")){
// this code for video
}else if(strstr($mime, "image/")){
// this code for image
}
Run Code Online (Sandbox Code Playgroud)
应该适用于大多数文件扩展.
看我的回答
示例代码
function getMimeType($filename)
{
$mimetype = false;
if(function_exists('finfo_fopen')) {
// open with FileInfo
} elseif(function_exists('getimagesize')) {
// open with GD
} elseif(function_exists('exif_imagetype')) {
// open with EXIF
} elseif(function_exists('mime_content_type')) {
$mimetype = mime_content_type($filename);
}
return $mimetype;
}
Run Code Online (Sandbox Code Playgroud)
我使用以下代码,在我看来,它比第一个也是最受好评的答案更通用:
$mimeType = mime_content_type($filename);
$fileType = explode('/', $mimeType)[0];
Run Code Online (Sandbox Code Playgroud)
我希望这对任何人都有帮助。
您可以使用以下函数检查 MIME 类型finfo_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);
?>
Run Code Online (Sandbox Code Playgroud)
编辑:在更好地检查你的问题之后,这不起作用,finfo函数需要 PHP 5.3.0