用于docx的PHP模仿类型检测


PHP mimetype detection for docx

mime_content_type和PECL文件信息扩展都无法检测到docx文档的正确MIME类型。

是否有任何扩展或解决方案可以在PHP中执行此操作,而不会基于文件扩展名创建丑陋的黑客?

我发现 PHP 在检测正确的 MIME 类型时有点命中。如果您不确定使用核心 PHP 函数获得正确的结果,那么您可以将命令传递给操作系统(如果在 Linux 上);

$output = exec('file --mime-type [filename]');
list($output, $mimeType) = explode(' ', $output);

另一种选择是,根据已知 mime 类型的列表检查文件扩展名;

例如

http://snipplr.com/view/1937/

但这取决于有一个完整的哑剧类型列表,这并不理想。