Home > php教程 > PHP源码 > 图片自动清理程序

图片自动清理程序

PHP中文网
Release: 2016-05-25 17:08:37
Original
1541 people have browsed it

 图片自动清理程序

<?php 
/** 
 * 图片清理计划程序,删除文件下两周没有访问的文件 
 */ 
$sRootPath = dirname(__FILE__); 
//define(TIME_LINE ,"-7 day");  //删除几天没有访问图片的时间 
$dir = $sRootPath .DIRECTORY_SEPARATOR.&#39;upload&#39;; 
$iTimeLine = strtotime("-7 day"); 
//$iTimeLine = time(); 
$sHandDate = date("Ymd"); 
$sLogDir = dirname(__FILE__).DIRECTORY_SEPARATOR.&#39;Imglog&#39;; 
$sLog = $sLogDir.DIRECTORY_SEPARATOR.$sHandDate.&#39;.txt&#39;; 
if(!file_exists($sLogDir)) mkdir($sLogDir, 0777,true); 
_clearFile($dir , $iTimeLine, $sLog); 
$sEnd = &#39;AT&#39;."\t" .date("Y-m-d H:i:s")."\t".&#39;EXEC OVER&#39;."\n"; 
echo $sEnd; 
error_log($sEnd, 3, $sLog); 
/** 
 * 清除文件操作,传入需要清除文件的路径 
 * @param unknown_type $sPath 
 */ 
function _clearFile($sPath, $iTimeLine, $sLog){ 
if(is_dir($sPath)){ 
$fp = opendir($sPath); 
while(!false == ($fn = readdir($fp))){ 
if($fn == &#39;.&#39; || $fn ==&#39;..&#39;) continue; 
$sFilePath = $sPath.DIRECTORY_SEPARATOR.$fn; 
_clearFile($sFilePath ,$iTimeLine, $sLog); 
} 

}else{ 
if($sPath != &#39;.&#39; && $sPath != &#39;..&#39;){ //. ..文件直接跳过,不处理 
$iLastView = fileatime($sPath); 
if($iLastView < $iTimeLine){ 
if(@unlink($sPath) === true){ 
//echo date("Y-m-d H:i:s").&#39;成功删除文件&#39;.$sPath; 
//file_put_contents($sLog,&#39;success del file :&#39;.$sPath."\n",  FILE_APPEND); 
//exit; 
$str =date("Y-m-d H:i:s")."\t".&#39;success del file :&#39;.&#39;[&#39;.$sPath.&#39;]&#39;."\n"; 
error_log($str, 3, $sLog); 
//exit; 
} 
} 
} 

}  


} 
?>
Copy after login

1. 代码

<?php
/**
 * 图片清理计划程序,删除文件下两周没有访问的文件
 */
$sRootPath = dirname(__FILE__);
//define(TIME_LINE ,"-7 day");  //删除几天没有访问图片的时间
$dir = $sRootPath .DIRECTORY_SEPARATOR.&#39;upload&#39;;
$iTimeLine = strtotime("-7 day");
//$iTimeLine = time();
$sHandDate = date("Ymd");
$sLogDir = dirname(__FILE__).DIRECTORY_SEPARATOR.&#39;Imglog&#39;;
$sLog = $sLogDir.DIRECTORY_SEPARATOR.$sHandDate.&#39;.txt&#39;;
if(!file_exists($sLogDir)) mkdir($sLogDir, 0777,true);
_clearFile($dir , $iTimeLine, $sLog);
$sEnd = &#39;AT&#39;."\t" .date("Y-m-d H:i:s")."\t".&#39;EXEC OVER&#39;."\n";
echo $sEnd;
error_log($sEnd, 3, $sLog);
/**
 * 清除文件操作,传入需要清除文件的路径
 * @param unknown_type $sPath
 */
function _clearFile($sPath, $iTimeLine, $sLog){ 
    if(is_dir($sPath)){
        $fp = opendir($sPath);
        while(!false == ($fn = readdir($fp))){
            if($fn == &#39;.&#39; || $fn ==&#39;..&#39;) continue;
            $sFilePath = $sPath.DIRECTORY_SEPARATOR.$fn;
            _clearFile($sFilePath ,$iTimeLine, $sLog);
        }
         
    }else{      
        if($sPath != &#39;.&#39; && $sPath != &#39;..&#39;){ //. ..文件直接跳过,不处理
            $iLastView = fileatime($sPath);
            if($iLastView < $iTimeLine){
                if(@unlink($sPath) === true){
                    //echo date("Y-m-d H:i:s").&#39;成功删除文件&#39;.$sPath;                 
                    //file_put_contents($sLog,&#39;success del file :&#39;.$sPath."\n",  FILE_APPEND);
                    //exit;
                    $str =date("Y-m-d H:i:s")."\t".&#39;success del file :&#39;.&#39;[&#39;.$sPath.&#39;]&#39;."\n";
                    error_log($str, 3, $sLog);
                    //exit;
                }
            }
        }
         
    } 
         
     
}
?>
Copy after login


 以上就是 图片自动清理程序的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template