如何删除超过特定时间的文件/文件夹

Tia*_*ago 3 php

我已经使用了一个函数来删除某个文件夹中的所有文件和文件夹.

function rrmdir($dir) {
    if (is_dir($dir)) {
        $objects = scandir($dir);
        foreach ($objects as $object) {
            if ($object != "." && $object != "..") {
                if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
            }
        }
        reset($objects);
        rmdir($dir);
    }
}
Run Code Online (Sandbox Code Playgroud)

我现在要做的是:调整该功能只删除超过60分钟的文件和文件夹(例如).

有一个php函数'filetime',我相信它给出了文件/文件夹的年龄,但我不知道如何删除特别是"x"分钟之前的文件.

Mic*_*ski 10

此构造将使用以下filemtime()函数删除超过60分钟(3600秒)的文件:

if (filemtime($object) < time() - 3600) {
  // Remove empty directories...
  if (is_dir($object)) rmdir($object);
  // Or delete files...
  else unlink($object);
}
Run Code Online (Sandbox Code Playgroud)

请注意,rmdir()要工作,目录必须为空.