您的位置:首页 > 编程语言 > PHP开发

thinkphp的静态缓存使用方法

2013-12-16 19:42 507 查看
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
 
例:
<?php  
return array(  
'getHtml' => array('{:action}', -1),//-1表示永久缓存  
);  
?>  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: