前言:一般分类基本不会动,所以我们在分类当中加入缓存

1.控制器use

use think\facade\Cache;

2.存取缓存

public function index()

{

if (Cache::get('category')) { //判断是否存在

$categories = Cache::get('category'); //存在就读缓存

} else {

$categories = Categories::all_categories();

Cache::set('category', $categories); //不存在就设置缓存

}

$this->assign(compact('categories'));

return $this->fetch();

}

3. 删除缓存,当我们新增或者编辑的时候,数据发生了改变,那么我们先删除缓存然后再去设置新的缓存

Cache::rm('category');

例如:这里的allowfield是希望指定某些字段写入

public function update(Request $request)

{

$categories = new Categories();

$categories->allowField(['name', 'photo_id'])->save($_POST, ['id' => $request->id]);

Cache::rm('category');

}

4.生成缓存的时候,会生成缓存文件,那么我们就需要删除项目缓存文件,当然也可以让其自动更新:

/***

* 执行清除

*/

public function cache()

{

$path = ROOT_PATH . '/runtime/temp';

delDirAndFile($path); //这里是一个助手函数

$this->success('清除模板缓存成功', 'Index/index');

}

助手函数common.php中

/**

* 删除目录及目录下所有文件或删除指定文件

* @param str $path 待删除目录路径

* @param int $delDir 是否删除目录,1或true删除目录,0或false则只删除文件保留目录(包含子目录)

* @return bool 返回删除状态

*/

function delDirAndFile($path, $delDir = FALSE)

{

$handle = opendir($path);

if ($handle) {

while (false !== ($item = readdir($handle))) {

if ($item != "." && $item != "..")

is_dir("$path/$item") ? delDirAndFile("$path/$item", $delDir) : unlink("$path/$item");

}

closedir($handle);

if ($delDir)

return rmdir($path);

} else {

if (file_exists($path)) {

return unlink($path);

} else {

return FALSE;

}

}

}

tp5缓存在html怎么用,tp5.1缓存Cache的使用相关推荐

  1. tp5路径怎样去掉index.php,tp5如何隐藏index.php文件

    tp5隐藏index.php文件的方法:首先在文件入口的同级目录下添加".htaccess"文件:然后配置内容为"RewriteCond %{REQUEST_FILENA ...

  2. tp5 if 如果有html判断,tp5条件判断,in,notin,between,if等

    一.比较标签如: {比较标签 name="变量" value="值"} 内容 {/比较标签} {eq name="name" value=& ...

  3. tp5 php里如何打印变量,TP5系统变量输出

    1.系统变量 在index.html文件中: 我是index控制器index操作模板文件 server.http_host: {$Think.server.http_host} cookie.site ...

  4. tp5.1添加定时器任务linux,TP5 用cron实现linux定时任务

    TP5 用cron实现linux定时任务 1) tp5的控制器内容: namespace app\test\controller; use think\Controller; use think\fa ...

  5. tp5 怎么跳转php页面,tp5页面跳转重定向

    三.页面跳转 1.方法存在的文件路径 TP5\thinkphp\library\traits\controller\Jump.php 成功跳转$this->success(); 失败跳转$thi ...

  6. tp5多图上传php,TP5框架实现上传多张图片的方法分析

    本文实例讲述了tp5框架实现上传多张图片的方法.分享给大家供大家参考,具体如下: 1.效果图(每点击一次'添加选项',就会有一个新的 file 框来添加新的图片) 2.view 添加 $(" ...

  7. Tp5缓存Cache

    一.应用缓存获取城市信息 /*** 获取城市下属地址分类信息* @param string $cityid* @return array|mixed*/public function superCit ...

  8. tp5 童攀_童攀TP5企业网站实战笔记

    return view();   载入视图 {include file='public/head'} 包含文件 {:url('admin/add')} 视图中跳转链接 input('post.'); ...

  9. tp5视图里写原生php,tp5中使用原生sql查询总结

    // 插入记录 //         $result = Db::execute('insert into sb_ad (ad_name, ad_content ,status) values (1, ...

最新文章

  1. 解决win2003下IIS中建立ASP网站出现500内部错误的方法(BUG)
  2. 【ubuntu】安装之后要安装的一些东西
  3. CleanAOP实战系列--WPF中MVVM自动更新
  4. php round函数输出不对_Python 四舍五入函数 Round
  5. java类成员初始化_简单了解Java类成员初始化顺序
  6. 初识Hibernate 缓存
  7. 初学Hibernate
  8. 2008 读第一本书
  9. 理解最小生成树与权值最小边无关
  10. TreeMap按key排序
  11. 计算机二级c语言程序设计题评分标准,计算机二级C语言题型和评分标准
  12. VNC Viewer从本地windows复制粘贴中文到ubuntu服务器中出现乱码(准确来说是unicode)的情况
  13. 服务器cmd升级系统命令,02-软件升级操作指导(命令行版)
  14. 3 Idiots ——谢 阿米尔·汗
  15. unity 实现物体破碎效果的一些方法 - 细雨淅淅
  16. 世界卫生组织国际癌症研究机构致癌物清单
  17. 【大揭秘】Android架构组件ViewModel来龙去脉
  18. BTree与B+Tree图文详解
  19. 台湾、香港、澳门的城市三级联动json
  20. Java 连接数据库的几种方法

热门文章

  1. 列一下OOP规约,编程的时候共勉!别踏坑!
  2. 2020年全国普通高校毕业生874万,同比增加40万人。我们该何去何从?
  3. 面试题:聊聊Unix与Java的IO模型?
  4. java设计模式——工厂方法模式
  5. leetcode 720. Longest Word in Dictionary | 720. 词典中最长的单词(Trie前缀树)
  6. leetcode 782. Transform to Chessboard | 782. 变为棋盘(Java)
  7. 【Log4j日志输出】控制台输出、输出到文件:简单使用示例
  8. PAT1009 说反话 (20 分)【cinstring类型数组 ctrl z结束 OJ可以用EOF】
  9. 牛客网_PAT乙级1014_科学计数法 (20)
  10. 一张PDF了解JDK10 GC调优秘籍-附PDF下载