
Question:
how to delete images file from public/images folder in laravel 5 ??
i found some example from this site, but i know they are just using the file name in their record table
, but i'm using something like URL
e.g localhost/project/uploads/filename.jpg
on my record table
. so if i tried like this :
$image_path = $data->image; // the value is : localhost/project/image/filename.format
if(File::exists($image_path)) {
File::delete($image_path);
}
the file is not deleted
help pls, thanks
Answer1:If you want to delete image from your server, you have to reference location of file in directory server, means you could not reference by url link to delete it.
Commonly, Laravel 5 file is locate in <em>public</em> folder.
Example: your files are located in <em>public/images</em>
$image_path = "/images/filename.ext"; // Value is not URL but directory file path
if(File::exists($image_path)) {
File::delete($image_path);
}
If I can delete image from server by reference URL then Google is the first target :)
Answer2:call this function and pass two parameter $filepath = path where your file exist $filename = name of your file
public static function UnlinkImage($filepath,$fileName)
{
$old_image = $filepath.$fileName;
if (file_exists($old_image)) {
@unlink($old_image);
}
}