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
的兼容性問題。