PHP实现图片自动清理的方法


Posted in PHP onJuly 08, 2015

本文实例讲述了PHP实现图片自动清理的方法。分享给大家供大家参考。具体实现方法如下:

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

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
PHP 内存缓存加速功能memcached安装与用法
Sep 03 PHP
php面向对象全攻略 (十五) 多态的应用
Sep 30 PHP
PHP 遍历文件实现代码
May 04 PHP
php设计模式 Visitor 访问者模式
Jun 28 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
Dec 19 PHP
php二维数组排序方法(array_multisort usort)
Dec 25 PHP
ThinkPHP3.1的Widget新用法
Jun 19 PHP
mantis安装、配置和使用中的问题小结
Jul 14 PHP
CI框架实现优化文件上传及多文件上传的方法
Jan 04 PHP
PHP对象实例化单例方法
Jan 19 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
php-redis中的sort排序函数总结
Jul 08 #PHP
PHP通过串口实现发送短信
Jul 08 #PHP
PHP使用CURL模拟登录的方法
Jul 08 #PHP
一个PHP实现的轻量级简单爬虫
Jul 08 #PHP
PHP设置进度条的方法
Jul 08 #PHP
smarty内部日期函数html_select_date()用法实例分析
Jul 08 #PHP
php类的定义与继承用法实例
Jul 07 #PHP
You might like
关于crontab的使用详解
2013/06/24 PHP
php遍历类中包含的所有元素的方法
2015/05/12 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
Javascript学习笔记1 数据类型
2010/01/11 Javascript
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
2014/01/02 Javascript
JavaScript获取当前网页标题(title)的方法
2015/04/03 Javascript
JS中frameset框架弹出层实例代码
2016/04/01 Javascript
jquery 遍历数组 each 方法详解
2016/05/25 Javascript
BootStrap3中模态对话框的使用
2017/01/06 Javascript
强大的 Angular 表单验证功能详细介绍
2017/05/23 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
2020/07/30 Javascript
JS中循环遍历数组的四种方式总结
2021/01/23 Javascript
Python中unittest用法实例
2014/09/25 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
python的pandas工具包,保存.csv文件时不要表头的实例
2018/06/14 Python
python 拼接文件路径的方法
2018/10/23 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
Python实现EXCEL表格的排序功能示例
2019/06/25 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
2020/01/08 Python
python 一维二维插值实例
2020/04/22 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
利用CSS3的线性渐变linear-gradient制作边框的示例
2016/06/02 HTML / CSS
孕妇装中的著名品牌:Isabella Oliver(伊莎贝拉·奥利弗)
2016/10/31 全球购物
AURALog面试题软件测试方面
2013/10/22 面试题
工厂厂长岗位职责
2013/11/08 职场文书
销售文员岗位职责
2013/11/29 职场文书
信息系统专业个人求职信范文
2013/12/07 职场文书
母亲节演讲稿
2014/05/27 职场文书
2014年后勤管理工作总结
2014/12/01 职场文书
同意转租证明
2015/06/24 职场文书
汽车销售员工作总结
2015/08/12 职场文书
新郎父母婚礼答谢词
2015/09/29 职场文书
2016初一新生军训心得体会
2016/01/11 职场文书
餐饮行业关注的9大营销策略
2019/08/26 职场文书
浅谈Java父子类加载顺序
2021/08/04 Java/Android