读取一个文件后,怎样清除js文件缓存这个文件的缓存

博客访问: 137685
博文数量: 81
博客积分: 66
博客等级: 民兵
技术积分: 970
注册时间:
正在写游戏服务端的erlang人,希望能有朝一日变成erlang大神。
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: 系统运维
今天做了一个ThinkPHP清除缓存功能,在网上开了一下有一个比较简单的写法但是那个是ThinkPHP内置的一个类,我找了半天没找到这个类,气死我了& 于是就用php删除文件夹下所有文件这个方法来达到清除缓缓存的的功能,废话不多说粘上代码:
/*此方法为公共方法用来删除某个文件夹下的所有文件&& & * $path为文件的路径&& & * $fileName文件夹名称&& & * */&& &public function rmFile($path,$fileName){&& &&& &//去除空格&& &&& &$path = preg_replace('/(\/){2,}|{\\\}{1,}/','/',$path);&& &&& &&& &//得到完整目录&& &&& &&& &$path.= $fileN&& &&& &//判断此文件是否为一个文件目录&& &&& &if(is_dir($path)){&& &&& &&& &//打开文件&& &&& &&& &if ($dh = opendir($path)){&& &&& &&& &&& &//遍历文件目录名称&& &&&&&& &&& &&& &while (($file = readdir($dh)) != false){&& &&&&&& &&& &&& &&& &//逐一进行删除&& &&&&&& &&& &&& &&& &unlink($path.'\\'.$file);&& &&&&&& &&& &&& &&& &}&& &&&&&& &&& &&& &&& &//关闭文件&& &&&&& &&& &&& &&& &closedir($dh);&& &&& &&& &&& &}&& &&& &&& &&& &}&& &}
//一对一删除缓存&& &public function cache(){
&&&&&&& //前台用ajax get方式进行提交的,这里是先判断一下&& &&& &if($_GET['type']){
&&&&&&&&&&&& //获取提交过来的值(也就是要删除的文件夹名称)
&& &&& &&&& $type=$_GET['type'];
&&&&&&&&&&& //获取文件的绝对路径
&& &&& &&&& $abs_dir=dirname(dirname(dirname(dirname(__FILE__))));
&&&&&&&&&&& //与要删除的文件夹里的文件进行组合&& &&& &&& &$pa=$abs_dir.'\Admin\Runtime\\';
&&&&&&&&&& //调用上面写好的方法
&& &&& &&&& $this->rmFile($pa,$type);
&&&&&&&&&&& //返回提示信息&& &&& &&& &$this->ajaxReturn(1,'清除成功',1);&& &&& &}else{&& &&& &&& &$this->display();&& &&& &}&& &}
//一键清除所有缓存&& &public function allrun(){
&&&&&&& ////前台用ajax get方式进行提交的,这里是先判断一下&& &&& &if($_GET['type']){
&&&&&&&&& //得到传递过来的值&& &&& &&& &$type=$_GET['type'];
&&&&&&&&&&& //将传递过来的值进行切割,我是已“-”进行切割的&& &&& &&& &$name=explode('-', $type);
&&&&&&&&&&& //得到切割的条数,便于下面循环
&& &&& &&&& $count=count($name);
&&&&&&&&&& //循环调用上面的方法
&& &&& &&&& for ($i=0;$i<$$i++){
&&&&&&&&&&&&&&& //得到文件的绝对路径
&& &&& &&& &&&& $abs_dir=dirname(dirname(dirname(dirname(__FILE__))));
&&&&&&&&&&&&&&& //组合路径&& &&& &&& &&& &$pa=$abs_dir.'\Admin\Runtime\\';
&&&&&&&&&&&&&&& //调用删除文件夹下所有文件的方法&& &&& &&& &&& &$this->rmFile($pa,$name[$i]);&& &&& &&& &&& &}
&&&&&&&&&& //给出提示信息
&& &&& &&&& $this->ajaxReturn(1,'清除成功',1);&& &&& &}else{&& &&& &&& &$this->display();&& &&& &}&& &}
前台页面很简单 在这里就给出重要的代码
//这个是ajax get方式提交
&& &&& &&& &&& &&& &&
&& &&& &&& &&& &&& &&&
&&&&&&&&&&&&&&&&&&&&&&&&&& //关键就是这个隐藏域的默认值 就是你要删除文件夹里面内容的文件夹的名 && &&& &&& &&& &&& && &&& &&& &&& &&& &&& &&& &&&& && &&& &&& &&& &&& &&&& && &&& &&& &&& &&& && && &&& &&& &&& &&& &&
&& &&& &&& &&& &
//一键清除所有
&& &&& &&& &&& &&& && && &&& &&& &&& &&& &&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& //默认值是几个文件夹的名字连起来 提交方式和上面的一样&& &&& &&& &&& &&& && &&& &&& &&& &&& &&& &&& &&&& && &&& &&& &&& &&& & &&& &&& &&& &&& &&& &&& && && &&& &&& &&& &&& && && &&& &&& &&& &
阅读(1060) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。请教大神一个问题,如何获取缓存temp里的文件并且清除!!!_swift吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:33,055贴子:
请教大神一个问题,如何获取缓存temp里的文件并且清除!!!收藏
实现清除缓存的效果,
怎么获取缓存temp里的东西,并且给他转换成label内容显示在99.99的地方,并且点击后可以清除缓存,数字会变动!!!!
请大神指教
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或php定时删除文件夹下文件(清理缓存文件)
字体:[ ] 类型:转载 时间:
有的时候网站缓存文件夹里生成的临时文件越来越多,而长时间不清理就会造成文件夹下有上万个缓存文件,可能会使ftp工具多无法进入其文件夹。使临时文件无法删除
那么有没有方法自动清理临时文件夹呢? 以下代码就是一个简单定时清理文件夹下文件的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."/".$ if(!is_dir($fullpath)) { unlink($fullpath); } else { deldir($fullpath); } } } closedir($dh); //删除当前文件夹: if(rmdir($dir)) {
实例:删除某个文件夹下的所有“.svn”文件夹(包括其内容也要被删除).
代码如下: &?php function delsvn($dir) { $dh=opendir($dir); //找出所有".svn“ 的文件夹: while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$ 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."/".$ if(is_dir($fullpath)){ delsvndir($fullpath); }else{ unlink($fullpath); } } } closedir($dh); //删除目录文件夹 if(rmdir($svndir)){
} } $dir=dirname(__FILE__); //echo $ delsvn($dir); ?&
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多关于 tomcat清除缓存文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信