지정일 이전 파일 삭제 방법 (하위 폴더 포함) 정보
지정일 이전 파일 삭제 방법 (하위 폴더 포함)본문
가끔 지정일 이전 파일들을 싹 지워야 하는 경우에 사용하면 좋은 소스입니다.
$dir : 폴더
$last_date : 년월일
만 지정하면 파일생성일을 비교해서 지정일 이전 파일들은 싹 지워집니다.
$dir = $_SERVER['DOCUMENT_ROOT']."/data/file";
$dirs = dir($dir);
$last_date = "20180101";
$del_size = 0;
$total_size = 0;
$total_cnt = 0;
$del_cnt = 0;
while(false !== ($entry = $dirs->read())) {
if(($entry != '.') && ($entry != '..')) {
if(is_dir($dir.'/'.$entry)) {
$dir2 = $dir.'/'.$entry;
$dirs2 = dir($dir2);
while(false !== ($entry2 = $dirs2->read())) {
if(($entry2 != '.') && ($entry2 != '..')) {
if(is_dir($dir2.'/'.$entry2)) {
}else{
$file_date2 = date("Ymd",filemtime($dir2.'/'.$entry2));
$file_size = filesize($dir2.'/'.$entry2);
$total_size += $file_size;
if ($last_date>$file_date2){
$del_size += $file_size;
@unlink($dir2.'/'.$entry2);
$del_cnt++;
}
$total_cnt++;
}
}
}
} else {
$file_date = date("Ymd",filemtime($dir.'/'.$entry));
$file_size = filesize($dir.'/'.$entry);
$total_size += $file_size;
if ($last_date>$file_date){
$del_size += $file_size;
@unlink($dir.'/'.$entry);
$del_cnt++;
}
$total_cnt++;
}
}
}
$dirs->close();
추천
6
6
댓글 4개
유용한 정보, 감사합니다.
감사합니다.
감사합니다 ^^
지정일 이전 파일 삭제 방법 (하위 폴더 포함)