我试图在上传时创建图片缩略图。问题是缩略图根本没有创建。也不保存在数据库中。
这是我在我的功能中添加的内容
$image = $request->file('image');
if( $image && $image->isValid()){
$imagename = str_random(20).'.'.$image->getClientOriginalExtension();
$destinationPath = public_path('/uploads');
$thumb_img = Image::make($image->getRealPath())->resize(100, 100);
$thumb_img->save($destinationPath.'/'.$imagename,80);
$image->move($destinationPath, $imagename);
}
$item->image = $filename;
$item->image_thumb = $thumb_img;
它只保存原始图像两个地方 - uploads
目录和数据库,但没有任何关于缩略图。
我正在使用干预套餐。
答案 0 :(得分:0)
由于您两次覆盖相同的图像,因此无法保存。看看你有什么:
首先,您创建thumbnail
并将其保存到/uploads
在此之后,您将原件保存到具有相同名称的同一目录中,例如覆盖拇指。
您只需要为缩略图指定不同的名称:
$thumb_img = Image::make($image)->resize(100, 100)->save($destinationPath.'/thumb_'.$imagename, 80);
注意拇指thumb_
...