2010-03-27 3 views
0

5 일 이상 액세스하지 않은 특정 폴더에서 .jpg 파일을 자동으로 삭제하는 크론 작업을 만들려고합니다. cron 작업을 실행하는 것은 문제가되지 않지만 삭제 작업을 처리 할 스크립트를 작성하려면 어떻게해야합니까?5 일 이상 액세스하지 않은 사진을 삭제하는 방법은 무엇입니까?

+1

것은 당신의 파일 시스템이 저장 액세스 시간으로 구성되어 있는지 확인하십시오! – Gabe

답변

3

파일 시스템이 atime/relatime 옵션으로 마운트되었다고 가정하면 fileatime()을 사용하여 마지막 액세스 시간을 감지 할 수 있습니다.

그래서 같은 :

$dir = '/your/path/'; 

if ($fh = opendir($dir)) 
{ 
    while(($file = readdir($fh)) !== FALSE) 
    { 
     if ($file == '.' || $file == '..') 
      continue; 

     if (is_file($dir . $file) && fileatime($dir . $file) < strtotime('-5 days')) 
      unlink($dir . $file); 
    } 

    closedir($fh); 
} 
+0

테스트를 거치지 않은 경우 (즉 atime이 구현되지 않은 경우) 테스트는 항상 0

관련 문제