从上传文件夹 laravel 中删除未使用的 Images/files
Remove unused Images/files from upload folder laravel
我有 laravel5.4 application.I 想从我的上传文件夹中删除未使用的 images/files这在我的数据库中不可用。
例如:
我的用户个人资料上传文件夹中有 50 张图片,但有些图片未用于任何 user.i 认为他从前端删除或更新了他的图片。
是的,我知道我们需要编写代码,以便在用户更新或一次删除个人资料图片时删除文件,也可以从上传 folder.but 我的应用程序 运行 中多次删除,我想删除未使用的使用脚本的文件不是手动因为我有很多文件所以很难检查和删除文件 manually.anyone 你能帮我创建任何从文件夹中删除文件的功能吗?
抱歉我的英语不好。
我在我的 AdminController 中使用类似的东西通过点击一个按钮来删除图像。
也许您需要更改路径或扩展名
public function deleteUnusedImages()
{
$file_types = [
'gif',
'jpg',
'jpeg',
'png'
];
$directory = public_path();
$files = File::allFiles($directory);
foreach ($files as $file)
{
$ext = strtolower(pathinfo($file, PATHINFO_EXTENSION));
if (in_array($ext, $file_types)) {
if(DB::table('users')->where('votes', '=', $file)->count())
continue; // continue if the picture is in use
echo 'removed' . basename($file)."<br />";
unlink($file); // delete if picture isn't in use
}
}
}
我有 laravel5.4 application.I 想从我的上传文件夹中删除未使用的 images/files这在我的数据库中不可用。
例如: 我的用户个人资料上传文件夹中有 50 张图片,但有些图片未用于任何 user.i 认为他从前端删除或更新了他的图片。
是的,我知道我们需要编写代码,以便在用户更新或一次删除个人资料图片时删除文件,也可以从上传 folder.but 我的应用程序 运行 中多次删除,我想删除未使用的使用脚本的文件不是手动因为我有很多文件所以很难检查和删除文件 manually.anyone 你能帮我创建任何从文件夹中删除文件的功能吗?
抱歉我的英语不好。
我在我的 AdminController 中使用类似的东西通过点击一个按钮来删除图像。
也许您需要更改路径或扩展名
public function deleteUnusedImages()
{
$file_types = [
'gif',
'jpg',
'jpeg',
'png'
];
$directory = public_path();
$files = File::allFiles($directory);
foreach ($files as $file)
{
$ext = strtolower(pathinfo($file, PATHINFO_EXTENSION));
if (in_array($ext, $file_types)) {
if(DB::table('users')->where('votes', '=', $file)->count())
continue; // continue if the picture is in use
echo 'removed' . basename($file)."<br />";
unlink($file); // delete if picture isn't in use
}
}
}