![](/img/trans.png)
[英]Laravel 5 intervention image upload multiple resize and save path to database
[英]Intervention image multiple image upload in laravel
在刀片中
<input type="file" name="image[]" id="" required class="form-control" multiple accept="image/*">
在 controller
public function addReviewPost(Request $request)
{
$image = $request->file('image');
$this->validate($request, [
'image' => 'required',
'image.*' => ' max:2048 | dimensions:max_width=2200',
]);
if (request()->hasFile('image')) {
$counter = count($image);
for ($i = 0; $i < $counter; $i++) {
$image = Image::make($image[$i]);
$image->resize(null, 627, function ($constraint) {
$constraint->aspectRatio();
});
$image->save(public_path('../../img/testimonial/' . time() . '.png'));
}
}
}
它显示错误
Symfony\Component\Debug\Exception\FatalThrowableError
Cannot use object of type Intervention\Image\Image as array
谁能帮助我如何使用干预图像 package 上传多文件?
请尝试以下方法:
public function addReviewPost(Request $request)
{
if (request()->hasFile('image')) {
$images = $request->file('image');
foreach ($images as $key => $file) {
$image = Image::make($request->file($file));
$image->resize(null, 627, function ($constraint) {
$constraint->aspectRatio();
});
$image->save(public_path('../../img/testimonial/' . time() . '.png'));
}
}
}
如果您有任何错误,请告诉我。
如果有效,请不要忘记将其标记为答案
希望对你有帮助
谢谢
html
<input type="file" name="images[]" multiple accept="image/*">
Controller
foreach ($request->images as $key=>$image) {
$iimage = Image::make($image)
->resize(350, 150)
->encode('jpg');
Storage::disk('local')->put('public/gallery_images/' . $image->hashName(), (string)$iimage, 'public');
$request_data['image'] = 'gallery_images/'. $image->hashName();
$request_data['owner_id'] = auth()->guard('owner')->user()->id;
Gallery::create($request_data);
}//end of foreach
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.