问题描述
我有一个输入
<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'