我有 laravel5.4 application.i a application.i我想从我的上传文件夹中删除未使用的 images/fimage 数据库。
例如:我的上传文件夹中有50张图像用于用户配置文件,但其中一些图像不用于任何用户。我认为他从Frontend中删除或更新了他的图像。
是的,我知道我们需要在用户更新或一次删除配置文件图片时删除文件,也从上传文件夹中删除。但是我的应用程序从很多时间运行,我想使用脚本不是手动beakace删除未使用的文件,我很多文件,因此很难手动检查和删除文件。任何人都可以帮助我创建文件夹中的任何函数。
对不起,我的英语不好。
我在我的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
}
}
}