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 相关文章推荐
人大复印资料处理程序_补充篇
Oct 09 PHP
php中用foreach来操作数组的代码
Jul 17 PHP
获取URL文件名后缀
Oct 24 PHP
PHP同时连接多个mysql数据库示例代码
Mar 17 PHP
php输出xml必须header的解决方法
Oct 17 PHP
Laravel 4 初级教程之安装及入门
Oct 30 PHP
php文档工具PHP Documentor安装与使用方法
Jan 25 PHP
项目中应用Redis+Php的场景
May 22 PHP
详解如何在云服务器上部署Laravel
Jun 30 PHP
PHP chr()函数讲解
Feb 11 PHP
PHP设计模式之策略模式原理与用法实例分析
Apr 04 PHP
php的单例模式及应用场景详解
Feb 27 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程序
2006/10/09 PHP
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
2013/06/24 PHP
PHP callback函数使用方法和注意事项
2015/01/23 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
2019/10/24 PHP
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
js 表格隔行颜色
2009/12/02 Javascript
JavaScript 图片预览效果 推荐
2009/12/22 Javascript
JavaScript File分段上传
2016/03/10 Javascript
全面了解JavaScript对象进阶
2016/07/19 Javascript
Vue 中的compile操作方法
2018/02/26 Javascript
php中and 和 &&出坑指南
2018/07/13 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
自己动手封装一个React Native多级联动
2018/09/19 Javascript
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
关于layui toolbar和template的结合使用方法
2019/09/19 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
vue中监听路由参数的变化及方法
2019/12/06 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
python处理PHP数组文本文件实例
2014/09/18 Python
Python调用C语言开发的共享库方法实例
2015/03/18 Python
以911新闻为例演示Python实现数据可视化的教程
2015/04/23 Python
Python中http请求方法库汇总
2016/01/06 Python
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
一张图带我们入门Python基础教程
2017/02/05 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
Python OpenCV读取显示视频的方法示例
2020/02/20 Python
解决Jupyter因卸载重装导致的问题修复
2020/04/10 Python
python 视频下载神器(you-get)的具体使用
2021/01/06 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
物理系毕业生自荐信
2013/11/01 职场文书
人力资源部门的主要职能
2014/02/22 职场文书
弘扬焦裕禄精神走群众路线思想汇报
2014/09/12 职场文书
学法用法心得体会(2016推荐篇)
2016/01/21 职场文书
详解CSS3浏览器兼容
2022/12/24 HTML / CSS