php 删除目录下N分钟前创建的所有文件的实现代码
原文代码:
```php
// delfile("upload", 10); // 此处有一个注释掉的函数调用,可删除或保留
function delfile($dir, $n) { // 删除指定目录下N分钟前创建的所有文件
if (is_dir($dir)) { // 判断是否是目录
if ($dh = opendir($dir)) { // 打开目录句柄
while (false !== ($file = readdir($dh))) { // 遍历目录下的所有文件
if ($file != "." && $file != "..") { // 排除当前目录和上级目录的标识
$fullpath = $dir . "/" . $file; // 获取文件的完整路径
if (!is_dir($fullpath)) { // 判断是否为文件而非目录
$filedate = date("Y-m-d h:i:s", filemtime($fullpath)); // 获取文件的修改时间并转换为日期格式
$d1 = strtotime(date("Y-m-d h:i:s")); // 获取当前时间的Unix时间戳
$d2 = strtotime($filedate); // 获取文件修改时间的Unix时间戳
$Days = round(($d1 - $d2) / 60); // 计算时间差(以分钟为单位)
if ($Days > $n) { // 如果时间差大于指定的分钟数N,则删除该文件
unlink($fullpath); // 删除文件
}
}
}
}
closedir($dh); // 关闭目录句柄
}
}
}
?>
```
```php
function delFilesInDirectory($directoryPath, $minutesThreshold) { // 删除指定目录下N分钟前创建的所有文件,使操作更直观易懂。
if (is_dir($directoryPath)) { // 确认目标是一个目录。
$handle = opendir($directoryPath); // 打开目录以进行读取。
if ($handle) { // 成功打开目录句柄。