TP5(thinkPHP框架)如何实现后台清除缓存功能示例

饮食贵在节,读书贵在精,锻炼贵在恒,节饮食养胃,多读书养胆,喜运动延生!人生需要有目标,有追求,然有所以。

本文实例讲述了TP5(thinkPHP框架)实现后台清除缓存功能。分享给大家供大家参考,具体如下:

layui插件http://www.layui.com/

1--common的文件

/**
 * 循环删除目录和文件
 * @param string $dir_name
 * @return bool
 */
function delete_dir_file($dir_name) {
  $result = false;
  if(is_dir($dir_name)){
    if ($handle = opendir($dir_name)) {
      while (false !== ($item = readdir($handle))) {
        if ($item != '.' && $item != '..') {
          if (is_dir($dir_name . DS . $item)) {
            delete_dir_file($dir_name . DS . $item);
          } else {
            unlink($dir_name . DS . $item);
          }
        }
      }
      closedir($handle);
      if (rmdir($dir_name)) {
        $result = true;
      }
    }
  }
  return $result;
}

2-控制器里的

/**
* 清除缓存
*/
public function clear() {
    if (delete_dir_file(CACHE_PATH) || delete_dir_file(TEMP_PATH)) {
      $this->success('清除缓存成功');
    } else {
      $this->error('清除缓存失败');
    }
}

3-html代码

<a rel="nofollow noopener noreferrer" href="javascript::void(0)" rel="external nofollow" onclick="clearPhp(this)" data-GetUrl="{:url('login/clear')}">清楚缓存</a>

4---js 代码

<script>
  function clearPhp(obj) {
    var url=obj.getAttribute('data-GetUrl');
    //询问框
    layer.confirm('您确定要清除吗?', {
          btn: ['确定','取消'] //按钮
        },
        function(){
          $.get(url,function(info){
            if(info.code === 1){
              setTimeout(function () {location.href = info.url;}, 1000);
            }
            layer.msg(info.msg);
          });
        },
        function(){});
  }
</script>

更多的功能和插件 地址:https://www.kancloud.cn/he_he/thinkphp5

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

到此这篇关于TP5(thinkPHP框架)如何实现后台清除缓存功能示例就介绍到这了。狠抓基础是成功的基础 持之以恒是胜利的保证更多相关TP5(thinkPHP框架)如何实现后台清除缓存功能示例内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
thinkphp集成前端脚手架Vue-cli的好代码教程图解

thinkPHP5框架分页样式类完整示例

TP5(thinkPHP5)框架基于javascript ajax与后台数据交互操作简单示例

ThinkPHP框架如何实现定时执行任务的两种方法分析

thinkPHP5.0框架事务处理操作简单示例