![](/img/trans.png)
[英]How do I remove /storage from the URL for public images in my Laravel project?
[英]How do I remove my image from images folder in laravel?
在我的编辑详细信息页面中,有一个图像字段,我希望当我上传新图像时,旧照片将从图像文件夹中删除,并且新照片将上传,并且如果我未上传图片,而不是在提交期间,则不会产生错误
这是我的图片上传代码
$file = $request->file('file');
$name = time() . $file->getClientOriginalName();
$file->move('uploads/images', $name);
$employee->file = $name;
$employee->save();
如何取消链接?
如果您要更新模型,则可以删除旧文件并上传新文件(如果提供):
if ($request->hasFile('file')) {
Storage::delete($employee->file); // If $file is path to old image
$employee->file = $request->file('file')->store('name-of-folder');
}
我们可以在php中使用unlink
但是,如果要使用Laravel方式,请改用File :: delete()方法。
//删除单个文件
use File;
File::delete($filename);
//删除多个文件
File::delete($file1, $file2, $file3);
//删除文件数组
$files = array($file1, $file2);
File::delete($files);
注意:$ filename包含完整路径和图像名称,例如[' https://www.example.com/images/image.jpg ']
您可以使用unlink删除以前的图像文件(如果此代码存在):
if($request->hasFile('file')){
if(file_exists(public_path("your image url"))){
unlink(public_path("your image url"));
};
UploadImage($request)
}
和UploadImage()定义为:
private function UploadImage($request){
$file = $request->file('file');
$name = time() . $file->getClientOriginalName();
$file->move('uploads/images', $name);
$employee->file = $name;
$employee->save();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.