我有一个小的PHP脚本修复了Subtitle Workshop .srt文件中的一些错误。它工作正常,但我有一个问题验证.srt文件MIME类型。这是相关代码的一部分:
if ( $_FILES['file']['type'] != 'text/plain' &&
$_FILES['file']['type'] != 'application/x-subrip') {
$error .= '<p>MIME type is not allowed!</p>';
}
.srt文件实际上是纯文本文件。当我在.txt文件中上传字幕时,我的脚本运行正常。但是当我尝试使用.srt扩展名上传相同的文件时,我得到&#34;不允许使用MIME类型!&#34;错误。 &#39;应用程序/ x-subrip&#39; (发现它here)显然是罪魁祸首。但是我应该用什么呢?提前谢谢!
答案 0 :(得分:1)
我认为你不能做这个验证。纯文本文件可能有很多mimetypes,如“text / plain”,“application / octet-stream”,“text / str”等。 您可以执行白名单,但也需要进行其他类型的验证,可能是通过内容或使用库。