finfo_file
是 PHP 中用于检测文件 MIME 类型的函数
确保已安装 Fileinfo 扩展:
在 PHP 5.3.0 及更高版本中,Fileinfo 扩展已默认包含。要使用 finfo_file
函数,请确保已在 php.ini
文件中启用了 Fileinfo 扩展。在 php.ini
文件中取消以下行的注释(如果有):
extension=fileinfo
然后重启你的 web 服务器。
使用 mime_content_type
函数作为替代方案:
如果你的 PHP 版本低于 5.3.0,可以考虑使用 mime_content_type
函数。这个函数在 PHP 4.3.0 及更高版本中可用,但已在 PHP 7.2.0 中被废弃。使用示例:
$mime_type = mime_content_type($filename);
使用第三方库:
如果上述方法都不可行,可以考虑使用第三方库来检测文件的 MIME 类型。例如,可以使用 PHP Mimey 库。首先,通过 Composer 安装该库:
composer require ralouphie/mimey
然后在代码中使用它:
require 'vendor/autoload.php';
use Mimey\MimeTypes;
$mimes = new MimeTypes;
$mime_type = $mimes->getMimeType($extension);
通过以上方法,你应该能解决 PHP finfo_file
的兼容性问题。