我已经尝试了两种选择:
mime_content_type 函数
echo mime_content_type($img_path);
Run Code Online (Sandbox Code Playgroud)finfo 函数
$finfo = finfo_open(FILEINFO_MIME_TYPE);
echo finfo_file($finfo, $img_path);
finfo_close($finfo);
Run Code Online (Sandbox Code Playgroud)但我在这两种情况下都出错
“警告:finfo_file():识别数据失败 0:未加载魔法文件”
我不明白这有什么问题?
小智 6
对于将来想知道的人,原始发布者可能将外部 URL 设置为路径——“mime_content_type”和“finfo”函数都只能在本地路径上运行,而不能在外部 URL 上运行。
例子:
// Local file path
echo mime_content_type("image.gif");
Run Code Online (Sandbox Code Playgroud)
将返回:图像/gif
// External file path
echo mime_content_type("http://localhost/image.gif");
Run Code Online (Sandbox Code Playgroud)
将返回“警告:mime_content_type():识别数据失败 0:未加载魔术文件”
可以在 PHP.net 上的手册中找到回退版本和有关这些函数使用的更多信息:mime_content_type:http ://php.net/manual/en/function.mime-content-type.php
finfo 函数:http ://php.net/manual/en/book.fileinfo.php