thinkphp的静态缓存用法分析


Posted in PHP onNovember 29, 2014

本文较为详细的分析了thinkphp的静态缓存用法。分享给大家供大家参考。具体分析如下:

thinkphp里面内置了一个静态缓存功能,说静态缓存可能对我这种菜鸟而言不太好理解。其实静态缓存就是将THINKphp的某一个操作显示出来的页面生成一个HTML文件保存在设置的路径,当用户再次访问的时候,如果缓存没过期,那么这个操作将不再执行它下面的PHP程序,而是直接调用生成的HTML缓存文件。要使用静态缓存就需要在项目配置目录__APP__/Conf下面增加静态缓存规则文件 htmls.php,还需要在配置文件中打开静态缓存:

'HTML_CACHE_ON'=>TRUE

设置已经生成的静态页保存路径:

'HTML_PATH' =>'__APP__/html'
设置默认缓存有效时间:
'HTML_CACHE_TIME'=>'60'
读取静态页面的规则
'HTML_READ_TYPE'=>0
'HTML_READ_TYPE 设置成0,就是访问这个缓存了的操作的时候,该操作读取静态缓存页面显示。URL路径是该操作的路径.如果设置成1,访问该操作的时候,它就会重定向跳转到静态页面。URL就是缓存文件路径了。

接下来就要些缓存的规则了,也就是要设置一下 我们要对哪些操作进行静态缓存,缓存HTML的名称,和缓存时间了,

return array("操作名"=>array("要生成的HTML静态文件名称","设置缓存有效期","生成文件名称的规则") )
上面的"操作名"就是需要缓存的操作了,操作名又分三种形式.

1. 如果只写操作名称,那就是对项目下面所有模块的 这一操作名进行缓存。

2. 模块名称:操作名称,就表示只对该模块下面的该操作进行缓存。

3. '*' 表示 对所有的操作都缓存.生成静态文件的名称,可以更具当前的模块名称{:module}, 当前操作名称{:action},_GET _REQUEST _SERVER _SESSION _COOKIE的值 ($_xxx) 来设置.其中$_GET['xxx']参数可以直接用{xxx}表示。如果文件名称当中带有“/”那么系统会在保存目录中新建目录,如{:module}/{:action}系统就会在__APP__/html 目录下建立一共以当前模块名称命名的目录,然后生成以当 前操作名称命名的html文件了,缓存有效期,单位为秒,设置成-1表示永久缓存,生成文件名称的规则 就是 将 生成静态文件的名称 通过某个函数重新命名,比如md5.

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

PHP 相关文章推荐
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
Jan 29 PHP
php中global和$GLOBALS[]的分析之一
Feb 02 PHP
关于zend studio 出现乱码问题的总结
Jun 23 PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
Dec 01 PHP
php中使用url传递数组的方法
Feb 11 PHP
php实现用于计算执行时间的类实例
Apr 18 PHP
PHP数组操作简单案例分析
Oct 15 PHP
php获取目录中所有文件名及判断文件与目录的简单方法
Mar 04 PHP
ZendFramework2连接数据库操作实例
Apr 18 PHP
Laravel-添加后台模板AdminLte的实现方法
Oct 08 PHP
PHP 命名空间和自动加载原理与用法实例分析
Apr 29 PHP
PHP对接阿里云虚拟号的实现(号码隐私保护)
Apr 06 PHP
thinkphp中memcache的用法实例
Nov 29 #PHP
thinkPHP实现瀑布流的方法
Nov 29 #PHP
php删除左端与右端空格的方法
Nov 29 #PHP
ThinkPHP自动完成中使用函数与回调方法实例
Nov 29 #PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
Nov 29 #PHP
Sublime里直接运行PHP配置方法
Nov 28 #PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
Nov 28 #PHP
You might like
php抓取页面与代码解析 推荐
2010/07/23 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
2016/03/01 PHP
PHP编程求最大公约数与最小公倍数的方法示例
2017/05/29 PHP
PHP使用redis消息队列发布微博的方法示例
2017/06/22 PHP
javascript编程起步(第一课)
2007/01/10 Javascript
javascript dom 基本操作小结
2010/04/11 Javascript
纯js实现背景图片切换效果代码
2010/11/14 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
JavaScript 反科里化 this [译]
2012/09/20 Javascript
A标签中通过href和onclick传递的this对象实现思路
2013/04/19 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
Javascript中浮点数相乘的一个解决方法
2014/06/03 Javascript
jQuery实现contains方法不区分大小写的方法
2015/02/13 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
JavaScript之AOP编程实例
2015/07/17 Javascript
探究JavaScript函数式编程的乐趣
2015/12/14 Javascript
微信小程序 获取设备信息 API实例详解
2016/10/02 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
cordova入门基础教程及使用中遇到的一些问题总结
2017/11/14 Javascript
详解Nodejs内存治理
2018/05/13 NodeJs
JS简单数组排序操作示例【sort方法】
2019/05/17 Javascript
JavaScript实现图片轮播特效
2019/10/23 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
Python的for和break循环结构中使用else语句的技巧
2016/05/24 Python
安装python3的时候就是输入python3死活没有反应的解决方法
2018/01/24 Python
python数据化运营的重要意义
2019/11/25 Python
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
美国葡萄酒网上商店:Martha Stewart Wine Co.
2019/03/17 全球购物
英国羊皮鞋类领先品牌:Just Sheepskin
2019/12/12 全球购物
公司委托书格式范文
2014/10/09 职场文书
早会开场白台词大全
2015/06/01 职场文书
回复函范文
2015/07/14 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书
OpenCV-Python实现图像平滑处理操作
2021/06/08 Python
Vue3中toRef与toRefs的区别
2022/03/24 Vue.js
JS前端宏任务微任务及Event Loop使用详解
2022/07/23 Javascript