thinkphp htmls.php,ThinkPHP静态缓存简单配置和使用方法详解
本文实例讲述了ThinkPHP静态缓存简单配置和使用方法。分享给大家供大家参考,具体如下:
根据ThinkPHP官方手册:ThinkPHP内置了静态缓存类,通过静态缓存规则定义来实现了可配置的静态缓存。
启用静态缓存:
ThinkPHP官方手册写道
要使用静态缓存功能,需要开启HTML_CACHE_ON 参数,并且在项目配置目录下面增加静态缓存规则文件 htmls.php,两者缺一不可。否则静态缓存不会生效。
在配置文件Conf\config.php的array()中加上:
'HTML_CACHE_ON' => true,//开启静态缓存
'HTML_PATH' => '__APP__/html',//静态缓存文件目录,HTML_PATH可任意设置,此处设为当前项目下新建的html目录
静态规则定义:
ThinkPHP官方手册写道
静态规则的定义有三种方式:
Return Array(
'ActionName'=>array('静态规则','静态缓存有效期','附加规则'), //第一种
'ModuleName:ActionName'=>array('静态规则','静态缓存有效期','附加规则'),//第二种
'*'=>array('静态规则','静态缓存有效期','附加规则'),//第三种
…更多操作的静态规则
)
第一种是定义全局的操作静态规则,例如定义所有的read操作的静态规则为:
'read'=>array('{id}','60')
其中,{id} 表示取$_GET['id'] 为静态缓存文件名,第二个参数表示缓存60秒。
第二种是定义某个模块的操作的静态规则,例如,我们需要定义Blog模块的read操作进行静态缓存
'Blog:read'=>array('{id}',-1)
第三种方式是定义全局的静态缓存规则,这个属于特殊情况下的使用,任何模块的操作都适用,例如
'*'=>array('{$_SERVER.REQUEST_URI|md5}')
//根据当前的URL进行缓存。
我这里在静态缓存规则文件 htmls.php中写:
return array(
'getHtml' => array('{:action}', -1),//-1表示永久缓存
);
?>
上面的静态缓存规则表示定义所有的getHtml操作的静态规则为:
'getHtml'=>array('{:action}',-1)
{:action}表示当前操作名为静态缓存文件名。
同样在\Lib\Action\IndexAction.class.php文件中写:
class IndexAction extends Action{
//在当前项目的html目录下生成getHtml.shtml
public function getHtml() {
header('Content-type:text/html;charset=utf-8');
$this->assign('title', '生成html文件');
$this->assign('info', '生成html文件');
$this->display();
}
}
?>
在\Tpl\default\index\getHtml.html中写:
{$title}
{$info}
然后在浏览器中输入:http://127.0.0.1/myApp/index.php/index/getHtml,可看到预期的页面。
刷新页面后,浏览器地址栏会发生变化,如下:
ps:如果用的apache,firefox和opera可能会不支持shtml文件,可以在httpd.conf文件中找到"AddType text/html .shtml","AddOutputFilter INCLUDES .shtml",分别去掉前面的"#"即可。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
thinkphp htmls.php,ThinkPHP静态缓存简单配置和使用方法详解相关推荐
- java spring mvc 上传_Java Spring MVC 上传下载文件配置及controller方法详解
下载: 1.在spring-mvc中配置(用于100M以下的文件下载) 下载文件代码 @RequestMapping("/file/{name.rp}") public Respo ...
- 虚拟机2012搭建DNS服务器,Windows Server2012 安装配置DNS服务器方法详解
Windows Server2012 安装配置DNS服务器方法详解 在云服务器 Windows Server2012 上安装配置DNS服务器方法,安装与配置非常简单,在这里写个完整教程方便大家查询 一 ...
- Win7下SQLite安装配置与使用方法详解
Win7下SQLite安装配置与使用方法详解 2014-10-08 分类:数据库.编程开发.首页精华2人评论 来源:aehyok 分享到:更多1 前言 SQLite 是一个软件库,实现了 ...
- linux系统6.5详解,linux6.5下 简单配置 MINI 系统实现详解(1)
一.linux系统启动流程介绍 我们来了解下linux系统的启动流程: 首先linux要通过POST自检过程(BIOS)-->如果想要做多块启动盘的话,还需要在bios中选择启动磁盘--> ...
- g++ 编译mysql动态库_Linux下g++编译以及使用静态库和动态库的方法详解
下面小编就为大家带来一篇Linux下g++编译与使用静态库和动态库的方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 在windows环境下,我们通常在IDE如VS的 ...
- 服务器需要指定dns吗,Windows Server2012 安装配置DNS服务器方法详解
在云服务器 Windows Server2012 上安装配置DNS服务器方法,安装与配置非常简单,在这里写个完整教程方便大家查询 一.安装DNS服务器 1.打开服务器管理器,点击添加角色和功能 2.一 ...
- java文件下载controller_Java Spring MVC 上传下载文件配置及controller方法详解
下载: 1.在spring-mvc中配置(用于100M以下的文件下载) 下载文件代码 @RequestMapping("/file/{name.rp}") public Respo ...
- Spring集成Mybatis配置映射文件方法详解
Spring ORM模块集成Mybatis使用到了mybatis-spring,在配置mybatis映射文件的时候,一般不直接在Mybatis的配置文件里进行配置,而会在Spring的配置文件里使用M ...
- JAVA 静态变量,静态方法,main方法详解(韩顺平)
目录 一.类变量 1.类变量的引入 2.类变量的定义 3.类变量的特点 4.如何定义类变量 5.如何访问类变量 6.类变量使用细节 二.类方法 1.基本介绍 2.定义类方法 3.类方法的访问 4.类方 ...
最新文章
- iOS开发UI篇—transframe属性(形变)
- [转]关于重定向RedirectAttributes的用法
- react native 从头开始
- Hbase Region in transition (RIT) 异常解决
- ActivityManager kill reason
- 自动轮播本地图片触摸暂停轮播
- java组合语法_JAVA复用类之组合语法的使用(附源码)
- 借贷记账法下的账户对应关系_会计实操借贷记账法记账规则——会计干货来了快记啊!...
- sql t-sql_增强的PolyBase SQL 2019-使用t-SQL的外部表
- 12864液晶中文资料JHD529m1
- installshield java_项目创建失败(vs2012中的InstallShield)
- EasyClick 易点云测
- Java 导出 PDF之固定模板导出
- Vue+SpringBoot打造房屋租售信息系统
- 播放器只有图像没有声音的解决方案
- c++ const 转非const
- 说说Java代理模式
- Commander入门
- echarts字变大_EChart 文字大小调整 饼状图为例
- UGUI内核大探究(十六)InputField
热门文章
- 从零(0)开始计数与从 1 开始计数
- 域名与DNS(域名解析服务器)
- matlab 高级函数 —— ind2sub、kron
- SQOOP --hive-import 错误(Sqoop Hive exited with status 1)及解决
- python3 循环获取checkbutton_Python3 tkinter基础 Menu add_checkbutton 多选的下拉菜单
- python自动化测试-python能够做软件的自动化测试吗?
- python工资一般多少p-Python里的黄金库,学会了你的工资至少翻一倍
- python用什么软件编程-python用什么软件编写
- python办公自动化案例-Python实战:自动化办公:Python 自动整理 Excel 表格
- 分享 | 开源的中文语音识别系统