반응형
가끔 지정일 이전 파일들을 싹 지워야 하는 경우에 사용하면 좋은 소스입니다.
$dir : 폴더
$last_date : 년월일
만 지정하면 파일생성일을 비교해서 지정일 이전 파일들은 싹 지워집니다.
01 | $dir = $_SERVER [ 'DOCUMENT_ROOT' ]. "/data/file" ; |
02 | $dirs = dir( $dir ); |
03 | $last_date = "20180101" ; |
04 | $del_size = 0; |
05 | $total_size = 0; |
06 | $total_cnt = 0; |
07 | $del_cnt = 0; |
08 | while (false !== ( $entry = $dirs ->read())) { |
09 | if (( $entry != '.' ) && ( $entry != '..' )) { |
10 | if ( is_dir ( $dir . '/' . $entry )) { |
11 | $dir2 = $dir . '/' . $entry ; |
12 | $dirs2 = dir( $dir2 ); |
13 | while (false !== ( $entry2 = $dirs2 ->read())) { |
14 | if (( $entry2 != '.' ) && ( $entry2 != '..' )) { |
15 | if ( is_dir ( $dir2 . '/' . $entry2 )) { |
16 | } else { |
17 | $file_date2 = date ( "Ymd" , filemtime ( $dir2 . '/' . $entry2 )); |
18 | $file_size = filesize ( $dir2 . '/' . $entry2 ); |
19 | $total_size += $file_size ; |
20 | if ( $last_date > $file_date2 ){ |
21 | $del_size += $file_size ; |
22 | @unlink( $dir2 . '/' . $entry2 ); |
23 | $del_cnt ++; |
24 | } |
25 | $total_cnt ++; |
26 | } |
27 | } |
28 | } |
29 | } else { |
30 | $file_date = date ( "Ymd" , filemtime ( $dir . '/' . $entry )); |
31 | $file_size = filesize ( $dir . '/' . $entry ); |
32 | $total_size += $file_size ; |
33 | if ( $last_date > $file_date ){ |
34 | $del_size += $file_size ; |
35 | @unlink( $dir . '/' . $entry ); |
36 | $del_cnt ++; |
37 | } |
38 | $total_cnt ++; |
39 | } |
40 | } |
41 | } |
42 | $dirs ->close(); |
반응형
'사이트관리' 카테고리의 다른 글
서버 운영시 빠른 광고차단 (0) | 2018.06.21 |
---|---|
캡차(kcaptcha) 4자리로 단순하게 변경하기 (0) | 2018.06.11 |
관리자페이지 접속자 집계 목록 로봇출력 제외 (0) | 2018.06.10 |
접속자 통계 관리자만 볼수 있게 하는 코드 (0) | 2018.06.10 |
cheditor5 구글맵 사용과 이미지 무한 로딩 해결 (0) | 2018.05.14 |
시작페이지 및 즐겨찾기 추가하는 스크립트 (0) | 2018.04.29 |
그누보드 기본 구조 (0) | 2018.03.30 |
메인에서 게시판으로 바로가는 소스 (0) | 2018.03.27 |