Laravel7:验证上传的文件



我有一个从用户那里获取文件的表单,我用以下规则验证文件格式:

$valid = validator($request->only(['files'],[
'files' => ['nullable', 'array'],
'files.*' => ['mimes:zip,rar,jpeg,jpg,png,txt,doc,docx,pdf','max:25600']
]);

正如你所看到的,我说过也接受文本文件。但我只想接受text/plain文件。但例如,它也接受Python文件,因为它们是text/x-python。我甚至将mimes.php文件添加到config文件夹中,并在其中放入以下代码。但它仍然接受Python文件。

// config/mimes.php
<?php
return [
'txt' => ['text/plain']
];

使用mimetypes规则而不是mimes。通过这种方式,您可以将规则指定为:

$validated = request()->validate([
'files.*' => ['mimetypes:text/plain, ... '],
]);

参考资料:Laravel文档

相关内容

  • 没有找到相关文章

最新更新