您的位置:首页 > 编程语言 > PHP开发

php在指定的时间(多少秒以后)删除文件夹下所有子文件

2016-10-14 11:02 260 查看
**

 * 在指定的时间(多少秒以后)删除文件夹下所有子文件

 * @param $dir         string      文件路径

 * @param $sec         string      删除时间

 * @param $file_type   string      文件类型

 */

function delFile($dir,$sec='300',$file_type='') {

  if(is_dir($dir)){

    $files = scandir($dir);

 //打开目录 //列出目录中的所有文件并去掉 . 和 ..

    foreach($files as $filename){

      //获取文件创建时间

      $worn_time=filectime($dir.$filename);

      $new_time=time();

      $time=$new_time-$worn_time;

      if($time>$sec){

      if($filename!='.' && $filename!='..'){

        if(!is_dir($dir.'/'.$filename)){

          if(empty($file_type)){

            unlink($dir.'/'.$filename);

          }else{

            if(is_array($file_type)){

              //正则匹配指定文件

              if(preg_match($file_type[0],$filename)){

                unlink($dir.'/'.$filename);

              }

            }else{

              //指定包含某些字符串的文件

              if(false!=stristr($filename,$file_type)){

                unlink($dir.'/'.$filename);

              }

            }

          }

        }else{

          delFile($dir.'/'.$filename);

          rmdir($dir.'/'.$filename);

        }

      }

        }

    }

  }else{

    if(file_exists($dir)) unlink($dir);

  }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php