我希望能够检查上传的文件是图像还是MIME类型为video/mp4
的文件(mp4视频)。但是,我不知道如何做到这一点,因为它需要一个" OR"验证条件。
现在,我只有图像检查:
$validator = Validator::make(array('fileUpload' => $fileUpload), [
'fileUpload' => 'required|image',
]);
如何添加" OR"条件还要检查文件的MIME类型是否为video/mp4
?
答案 0 :(得分:2)
您还可以使用MIME Types rule或MIME rule:
$validator = Validator::make(
['fileUpload' => $fileUpload],
['fileUpload' => 'required|mimetypes:image/jpeg,image/bmp,image/png,video/mp4']
);
答案 1 :(得分:0)
您可以编写自己的验证规则来执行此操作:
https://laravel.com/docs/5.3/validation#custom-validation-rules
你的看起来可能是这样的:
Validator::extend('img_or_mp4', function ($attribute, $value, $parameters, $validator) {
return X; // Check the data in $value to see if it's an image or mp4
});
然后你的规则将是:
'fileUpload' => 'required|img_or_mp4',