绵阳动力网站建设

ThinkPHP5实现后台清除缓存的实现方法及代码

时间:2019-06-03

ThinkPHP5是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架,深受广大网站建设者的喜欢,并且使用量也非常的大,在使用过程中也会遇到不少的问题,今天绵阳动力网站建设就为大家来讲解关于后台清除缓存的实现方法及代码:

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 href="javascript::void(0)" rel="external nofollow" onclick="clearPhp(this)" data-GetUrl="{:url('logi

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>

好了,通过以上4步就可以为TP5框架增加后台清除缓存的功能了,很简单吧,赶紧给你的框架中也加上这个功能吧。

Copyright © 绵阳动力网站建设 www.kf51.cn All Rights Reserved 蜀ICP备08100083号

客服微信
客服微信
0816-6339181
客服微信
my_dongli