赵工的个人空间


网络课堂部分转网页计算部分转编程演练

 PHP的使用技巧

首页 > 网络课堂 > PHP的使用技巧 > 按时间删除文件的方法
按时间删除文件的方法

使用PHP上传文件时,有时并不想在服务器中长期存放上传的文件,这时可以根据时间来删除存放时间比较长的那些文件,以释放服务器存储空间。要查看一个文件夹中所有的文件创建修改时间,需要先使用opendir()打开对应文件夹以获取句柄,然后使用readdir()读取其中的所有文件。示例代码:
if($fd=opendir($folder)){
  while (false !== ( $item = readdir( $fd ) )){
    if ( $item != "." && $item != ".." ) {
      $timemk=filemtime($folder.'/'.$item);
      $timenow=time();
      if($timenow>=($timemk+3600)) {
        unlink($folder.'/'.$item);
      }
    }
  }
}
closedir($fd);
因为使用readdir()读取到的目录中包含“.”和“..”这两个表示本目录和上级目录的标识符,需要略过,然后使用filemtime()获取相应文件的最后修改时间戳,因为是从上级目录中进行操作,需要加上路径名。使用获取的文件修改时间加时间间隔与目前的时间戳对比,如果比这个时间间隔更长就使用unlink()删除相应文件。代码中的时间间隔设为1个小时,可以根据需要使用更长或更短的时间间隔。操作完成后需要使用closedir()关闭文件夹句柄。

Copyright@dwenzhao.cn All Rights Reserved   备案号:粤ICP备15026949号
联系邮箱:dwenzhao@163.com  QQ:1608288659