【发布时间】:2020-11-13 22:40:55
【问题描述】:
我尝试删除 laravel 项目中的一些图像文件。我关注网站上的教程及其工作,但教程仅删除了列图像中基于图像的名称。文件夹图像上的缩略图没有被删除。如何删除图像以及缩略图?请帮忙。 这是存储功能。
if ($request->hasFile('image'))
{
$file = $request->file('image');
$image = $file->getClientOriginalName();
$destination = public_path() . '/galeri/';
$successUploaded = $request->file('image')->move($destination, $file->getClientOriginalName());
if($successUploaded)
{
$extension = $file->getClientOriginalExtension();
$thumbnail = str_replace(".{$extension}", "_thumb.{$extension}", $image);
Image::make($destination . '/' . $image)
->resize(250, 170)
->save($destination . '/' . $thumbnail);
}
$photo->image = $image;
}
$photo->save();
这就是销毁函数
$photo = Photo::where('id', $id)->first();
File::delete('galeri/'.$photo->image);
if($photo){
$photo->delete();
}
【问题讨论】:
-
您也知道缩略图名称。它是
originalImageName_thumb.originalExtension。使用该信息也可以删除该文件。或者,您也可以将缩略图名称存储在数据库中,例如在名为thumbnail的列中。然后用同样的逻辑删除$photo->thumbnail
标签: php laravel image crud thumbnails