mzur / guess-mime
v1.0
2021-08-03 08:29 UTC
Requires (Dev)
- phpunit/phpunit: ^9.5
README
弃用: 使用 league/mime-type-detection
代替。
从文件扩展名猜测MIME类型(仅限Linux)。如果文件不存在或无法访问,这可能很有用。
警告: 如果文件实际存在且可以访问(例如检查用户上传的文件),则不应使用此包。请使用 finfo_file
。
安装
composer require mzur/guess-mime
默认情况下,此包需要存在 /etc/mime.types
文件。例如,可以使用 mime-support
包(Ubuntu)或 mailcap
包(Alpine)进行安装。也可以配置不同的文件(见下文)。
使用方法
use Mzur\GuessMIME\GuessMIME; $gm = new GuessMIME; $mime = $gm->guess('image.jpg'); var_dump($mime); // image/jpeg
如果无法猜测MIME类型,则返回 application/octet-stream
。您还可以限制可用的MIME类型,使用不同的MIME类型数据库文件(默认:/etc/mime.types
),并在无法猜测MIME类型时返回 null
。
use Mzur\GuessMIME\GuessMIME; // Limit detection to image/jpeg and use a different database file. $gm = new GuessMIME(['image/jpeg'], '/home/user/.mime.types'); // Default MIME type. $mime = $gm->guess('image.png'); var_dump($mime); // application/octet-stream // Use strict check. $mime = $gm->guess('image.png', true); var_dump($mime); // null