如何在不依赖扩展名的情况下检测文件类型
除了检查文件的扩展名之外,确定文件是 mp3 还是图像格式是很有价值的编程中的任务。这是一个不依赖扩展的全面解决方案:
PHP >= 5.3:
$mimetype = finfo_fopen(fopen($filename, 'r'), FILEINFO_MIME_TYPE);
PHP
$mimetype = mime_content_type($filename);
替代方案:
代理方法:
对于更通用的方法,请考虑将这些函数包装到代理方法中:
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;
}
通过使用此代理方法,您可以根据系统上不同功能的可用性轻松确定文件的 mimetype。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3