我正在尝试从我的服务器中删除文件,具体取决于它们上面的时间。目前我已经获得了以下脚本,但即使它们是在7月份上传的,也没有文件正在降级:
$dir = opendir('uploads/tradsp/');
while($f = readdir($dir))
{
if((time()-filemtime('uploads/tradsp/'.$f) > 3600*24*4) and !(is_dir('uploads/tradsp/'.$f)))
unlink('uploads/tradsp/'.$f);
}
closedir($dir);
有人在代码中发现错误吗?
谢谢你的时间答案 0 :(得分:0)
您好if condition
如果您想要删除过去几个月的文件,可能会出现一些错误,您只需获取文件的月份,并将其与当前月份进行比较
$dir = opendir('uploads/tradsp/');
$filemonth = date("n",filemtime("uploads/tradsp/".$f));
$currentmonth = date('n');
while($f = readdir($dir))
{
if(($filemonth < $currentmonth) and !(is_dir('uploads/tradsp/'.$f))){
unlink('uploads/tradsp/'.$f);
}
}
closedir($dir);
如果您要删除7月份文件,则会删除lastmonth的所有文件,您也可以使用$filemonth == 7
中的条件if statements