欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

thinkphp 一键清除缓存方法代码

程序员文章站 2022-06-12 16:36:44
...
  1. //获取要清楚的目录和目录所在的绝对路径
  2. public function cache(){
  3. ////前台用ajax get方式进行提交的,判断下
  4. if($_POST['type']){
  5. //得到传递过来的值
  6. $type=$_POST['type'];
  7. //将传递过来的值进行切割,我是用“-”进行切割的
  8. $name=explode('-', $type);
  9. //得到切割的条数,便于下面循环
  10. $count=count($name);
  11. //循环调用上面的方法
  12. for ($i=0;$i //得到文件的绝对路径
  13. $abs_dir=dirname(dirname(dirname(dirname(__FILE__))));
  14. //组合路径
  15. $pa=$abs_dir.'indexRuntime';
  16. $runtime=$abs_dir.'indexRuntime~runtime.php';
  17. if(file_exists($runtime))//判断 文件是否存在
  18. {
  19. unlink($runtime);//进行文件删除
  20. }
  21. //调用删除文件夹下所有文件的方法
  22. $this->rmFile($pa,$name[$i]);
  23. }
  24. //给出提示信息
  25. $this->ajaxReturn(1,'清除成功',1);
  26. }else{
  27. $this->display();
  28. }
  29. }
  30. public function rmFile($path,$fileName){//删除执行的方法
  31. //去除空格
  32. $path = preg_replace('/(/){2,}|{}{1,}/','/',$path);
  33. //得到完整目录
  34. $path.= $fileName;
  35. //判断此文件是否为一个文件目录
  36. if(is_dir($path)){
  37. //打开文件
  38. if ($dh = opendir($path)){
  39. //遍历文件目录名称
  40. while (($file = readdir($dh)) != false){
  41. //逐一进行删除
  42. unlink($path.''.$file);
  43. }
  44. //关闭文件
  45. closedir($dh);
  46. }
  47. }
  48. }
复制代码

前台页面部分代码:

复制代码