지정일 이전 파일 삭제 방법 (하위 폴더 포함) > 그누보드5 팁자료실

그누보드5 팁자료실

지정일 이전 파일 삭제 방법 (하위 폴더 포함) 정보

지정일 이전 파일 삭제 방법 (하위 폴더 포함)

본문

가끔 지정일 이전 파일들을 싹 지워야 하는 경우에 사용하면 좋은 소스입니다.

 

$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

댓글 4개

전체 2,429 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT