沃梦达 / 编程问答 / php问题 / 正文

如何在 Laravel 5.3 中对上传的多张图片进行验证

How to do validation for multiple images upload in laravel 5.3(如何在 Laravel 5.3 中对上传的多张图片进行验证)

本文介绍了如何在 Laravel 5.3 中对上传的多张图片进行验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个输入

    <input type="file" name="image[]" multiple="multiple" />

和控制器功能

public function upload(Request $request)
{
    $user_id = Auth::user()->id;

    foreach ($request->image as $image)
    {
        $this->validate($request,[
        'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048'
    ]);
        $imageName = mt_rand() .time().'.'.$image->getClientOriginalExtension();
        $img = Image::make($image->getRealPath());
        $img->resize(100, 100, function ($constraint) {
                                    $constraint->aspectRatio();
                    })->save(public_path('images/thumbs').'/'.$imageName);
        $image->move(public_path('images'), $imageName);
    }
}

但所有时间验证器都给我错误

but all the time validator gives me error that

    The image must be an image.

推荐答案

将验证移到循环之外并尝试使用规则:

Move validation outside the loop and try with the rules:

 'image' => 'required',
 'image.*' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048'

这篇关于如何在 Laravel 5.3 中对上传的多张图片进行验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何在 Laravel 5.3 中对上传的多张图片进行验证

基础教程推荐