//循环删除目录和文件函数 删除目录及目录下所有文件 public static function delDirAndFile( $dirName ) { //var_dump(is_dir($dirName));exit; if ( $handle = opendir( "$dirName" ) ) { while ( false !== ( $item = readdir( $handle ) ) ) { if ( $item != "." && $item != ".." ) { if ( is_dir( "$dirName/$item" ) ) { self::delDirAndFile( "$dirName/$item" ); //是路径继续递归 } else { unlink( "$dirName/$item" );//不是路径删除文件 目录/目录下的文件名带后缀 //if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item<br />\n"; } } } closedir( $handle ); rmdir( $dirName ); //if( rmdir( $dirName ) )echo "成功删除目录: $dirName<br />\n"; } } //循环目录下的所有文件 仅删除指定目录下的文件,不删除目录文件夹 public static function delFileUnderDir( $dirName,$now) { if ( $handle = opendir( "$dirName" ) ) { while ( false !== ( $item = readdir( $handle ) ) ) { if ( $item != "." && $item != ".." ) { if ( is_dir( "$dirName/$item" ) ) { self::delFileUnderDir( "$dirName/$item" ); } else { preg_match("/\d+/",$item,$matches); $time=$matches[0]; $difference=strtotime($now)-strtotime($time); $days = intval($difference/86400); $remain = $difference%86400; $hours = intval($remain/3600); if($hours>1 || $days>1 ){ unlink( "$dirName/$item"); } //if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item<br />\n"; } } } closedir( $handle ); } }
时间: 2024-11-05 20:39:42