php定时删除文件夹下文件(清理缓存文件)


Posted in PHP onJanuary 23, 2013

那么有没有方法自动清理临时文件夹呢?

以下代码就是一个简单定时清理文件夹下文件的php代码。
ps:这个代码如果不重启网站会一直执行下去,所以只用作于本地环境测试,请别在网站上测试。

<?php 
ignore_user_abort(); //客户端断开时,可以让脚本继续在后台执行 
set_time_limit(0); //忽略php.ini设置的脚本运行时间限制 
$interval = 5*60; //设置执行周期,单位为秒,5分钟为 5*60=300 
do{ 
$dir = "temp/"; //你的临时目录位置 
$handle=opendir("{$dir}/"); 
while (false !== ($file=readdir($handle))) { 
if ($file!="." && $file!=".." && !is_dir("{$dir}/{$file}")) { 
@unlink ("{$dir}/{$file}"); 
} 
} 
closedir($handle); //关闭由 opendir() 函数打开的目录 
sleep($interval); //执行一个周期后,休眠$interval时间,休眠结束后脚本继续执行 
}while(true); //周期性执行脚本

根据网上的一个思路来的,建一个flag.txt文件,在里面输入1或者0,“0”表示停止执行,“1”表示继续执行。这样的话就可以开始和停止了。

<?php 
$flag = 1; //将执行标志设置为1,默认为执行 
ignore_user_abort(); //客户端断开时,可以让脚本继续在后台执行 
set_time_limit(0); //忽略php.ini设置的脚本运行时间限制 
$interval = 5*60; //设置执行周期,单位为秒,5分钟为 5*60=300 
do{ 
$flagfile = "flag.txt"; //标志放置在文件“flag.txt”中。“0”表示停止执行,“1”表示继续执行 
if(file_exists($flagfile) && is_readable($flagfile)) { //读取文件内容 
$fh = fopen($flagfile,"r"); 
while (!feof($fh)) { 
$flag = fgets($fh); //存储标志 
} 
fclose($fh); 
} 
$dir = "temp/"; //你的临时目录位置 
$handle=opendir("{$dir}/"); 
while (false !== ($file=readdir($handle))) { 
if ($file!="." && $file!=".." && !is_dir("{$dir}/{$file}")) { 
@unlink ("{$dir}/{$file}"); 
} 
} 
closedir($handle); //关闭由 opendir() 函数打开的目录 
sleep($interval); //执行一个周期后,休眠$interval时间,休眠结束后脚本继续执行 
}while($flag);

php删除文件夹及其文件夹下所有文件

<? 
function deldir($dir) { 
//先删除目录下的文件: 
$dh=opendir($dir); 
while ($file=readdir($dh)) { 
if($file!="." && $file!="..") { 
$fullpath=$dir."/".$file; 
if(!is_dir($fullpath)) { 
unlink($fullpath); 
} else { 
deldir($fullpath); 
} 
} 
} 
closedir($dh); 
//删除当前文件夹: 
if(rmdir($dir)) { 
return true; 
} else { 
return false; 
} 
} 
?>

实例:删除某个文件夹下的所有“.svn”文件夹(包括其内容也要被删除).
<?php 
function delsvn($dir) { 
$dh=opendir($dir); 
//找出所有".svn“ 的文件夹: 
while ($file=readdir($dh)) { 
if($file!="." && $file!="..") { 
$fullpath=$dir."/".$file; 
if(is_dir($fullpath)) { 
if($file==".svn"){ 
delsvndir($fullpath); 
}else{ 
delsvn($fullpath); 
} 
} 
} 
} 
closedir($dh); 
} 
function delsvndir($svndir){ 
//先删除目录下的文件: 
$dh=opendir($svndir); 
while($file=readdir($dh)){ 
if($file!="."&&$file!=".."){ 
$fullpath=$svndir."/".$file; 
if(is_dir($fullpath)){ 
delsvndir($fullpath); 
}else{ 
unlink($fullpath); 
} 
} 
} 
closedir($dh); 
//删除目录文件夹 
if(rmdir($svndir)){ 
return true; 
}else{ 
return false; 
} 
} $dir=dirname(__FILE__); 
//echo $dir; 
delsvn($dir); 
?>
PHP 相关文章推荐
php实现mysql数据库备份类
Mar 20 PHP
PHP 进程锁定问题分析研究
Nov 24 PHP
php 截取字符串并以零补齐str_pad() 函数
May 07 PHP
关于php mvc开发模式的感想
Jun 28 PHP
慎用preg_replace危险的/e修饰符(一句话后门常用)
Jun 19 PHP
PHP操作MongoDB GridFS 存储文件的详解
Jun 20 PHP
php一维二维数组键排序方法实例总结
Nov 13 PHP
php使用递归函数实现数字累加的方法
Mar 16 PHP
Yii2验证器(Validator)用法分析
Jul 23 PHP
php中通过eval实现字符串格式的计算公式
Mar 18 PHP
Mac下php 5升级到php 7的步骤详解
Apr 26 PHP
php常用的工具开发整理
Sep 26 PHP
PHP关联数组的10个操作技巧
Jan 21 #PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
Jan 19 #PHP
PHP中CURL方法curl_setopt()函数的参数分享
Jan 19 #PHP
php牛逼的面试题分享
Jan 18 #PHP
APACHE的AcceptPathInfo指令使用介绍
Jan 18 #PHP
php图片加水印原理(超简单的实例代码)
Jan 18 #PHP
php加水印的代码(支持半透明透明打水印,支持png透明背景)
Jan 17 #PHP
You might like
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
2007/02/22 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
Zend Framework框架教程之Zend_Db_Table_Rowset用法实例分析
2016/03/21 PHP
微信公众号开发之文本消息自动回复php代码
2016/08/08 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
用倒置滤镜把div倒置,再把table倒置。
2007/07/31 Javascript
关于 文本框默认值 的操作js代码
2012/01/12 Javascript
从零学JS之你需要了解的几本书
2014/05/19 Javascript
JQuery中使用on方法绑定hover事件实例
2014/12/09 Javascript
js游戏人物上下左右跑步效果代码分享
2015/08/28 Javascript
js+css实现超简洁的二级下拉菜单效果代码
2015/09/07 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
2015/09/17 Javascript
Boostrap实现的登录界面实例代码
2016/10/09 Javascript
利用nodejs监控文件变化并使用sftp上传到服务器
2017/02/18 NodeJs
Express URL跳转(重定向)的实现方法
2017/04/07 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
2019/09/06 Javascript
jquery实现简单每周轮换的日历
2020/09/10 jQuery
Ant Design Pro 之 ProTable使用操作
2020/10/31 Javascript
在Python web中实现验证码图片代码分享
2017/11/09 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
python pandas实现excel转为html格式的方法
2018/10/23 Python
对python中的argv和argc使用详解
2018/12/15 Python
python 类的继承 实例方法.静态方法.类方法的代码解析
2019/08/23 Python
Python的缺点和劣势分析
2019/11/19 Python
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
2017/01/05 HTML / CSS
你的自行车健身专家:FaFit24
2016/11/16 全球购物
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
实习求职信
2013/12/01 职场文书
大学生职业规划书的范本
2014/02/18 职场文书
最美护士演讲稿
2014/08/27 职场文书
司机岗位职责范本
2015/04/10 职场文书
PHP实现考试倒计时功能代码
2021/04/16 PHP
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android