php如何根据文件的创建日期在目录中删除文件?

php如何根据文件的创建日期在目录中删除文件?

编程问答qingyu2020-12-06 16:33:39304A+A-

  php如何根据文件的创建日期在目录中删除文件?

  问题描述:

  我有一个存储html文件的缓存文件夹。它们在需要时会被覆盖,但是很多时候,很少使用(几乎不用)的页面也会在那里存储。差不多一个月,硬盘已存了270万个缓存html文件)。

  那么问题来了,php循环访问包含数十万个文件的目录并删除早于1天的html文件的最好的方法是什么?

  回答:

  php中可以通过使用readdir函数遍历目录并根据时间戳进行删除缓存的html来解决这个问题:

<?php$path = '/path/to/files/';if ($handle = opendir($path)) {
    while (false !== ($file = readdir($handle))) { 
        $filelastmodified = filemtime($path . $file);
        //24 hours in a day * 3600 seconds per hour
        if((time() - $filelastmodified) > 24*3600)
        {
           unlink($path . $file);
        }
    }
    closedir($handle); }?>

  在if((time() - $filelastmodified) > 24*3600)将选择的文件超过24小时以上(每小时3600秒)。如果需要几天,比如一周的时间是这样的: 7 * 24 * 3600。

  另外要注意,filemtime返回文件的最后修改时间,而不是创建日期。

点击这里复制本文地址 计算机毕业设计_计算机程序设计

支持Ctrl+Enter提交
qrcode

小黄鸡源码编程网 © All Rights Reserved.  Copyright shenhuangji.com
Powered by Z-BlogPHP
联系我们| 关于我们| 广告联系| 网站管理