我正在制作一个将删除超过15天的文件夹的Cron。我已经创建了一个删除文件夹及其内容的功能,我没有的是在文件夹中循环,然后检查每个文件夹的年龄,如果这是15天或更早,我将执行我的删除功能。
我想在public/uploads
在我的uploads
目录中,我存储了包含内容的文件夹
public/
uploads/
Test/
Test2/
我想查看这些文件夹的年龄,然后通过调用
删除它function Delete($path)
{
if (is_dir($path) === true)
{
$files = array_diff(scandir($path), array('.', '..'));
foreach ($files as $file)
{
Delete(realpath($path) . '/' . $file);
}
return rmdir($path);
}
else if (is_file($path) === true)
{
return unlink($path);
}
return false;
}
我该怎么做?感谢
答案 0 :(得分:0)
您正在寻找的功能是filemtime()。这使您可以确定文件(或目录)的上次修改日期。与various directory functions结合使用可以让您循环浏览它们并检查它们的日期。
这是我脑子里的嘲讽,让你大致了解你可能会如何:
$dir = '/path/to/my/folders';
$folders = scandir($dir);
foreach ($folders as $folder) {
$lastModified = filemtime($folder);
// Do a date comparison here and call your delete if necessary
}