smarty模板局部缓存方法使用示例


Posted in PHP onJune 17, 2014

在开启smarty缓存的情况下,第一次执行时会将其编译好的输出文件保存到cache目录中,然后在程序中通过smarty的is_cache()函数检测其 cache文件是否过期,如果过期会更新缓存,如果没有过期会自动调用cache文件,这样就省去了编译的过程。检测cache过期是看模板文件是否在指定的生命周期内是否更改,这里的更改是通过检测文件的最近修改时间实现的,不是通过检测模板文件内容。

防止一个模板文件的整篇都被缓存:

index.php文件:

require('smarty.class.php'); 
$smarty = new smarty; 
$smarty->caching = true; 
function smarty_block_dynamic($param, $content, &$smarty) { 
return $content; 
} 
$smarty->register_block('dynamic', 'smarty_block_dynamic', false); 
$smarty->display('index.tpl');

index.tpl:

page created: {"0"|date_format:"%d %h:%m:%s"} 
{dynamic} 
now is: {"0"|date_format:"%d %h:%m:%s"} 
... do other stuff ...

{/dynamic}

当重新加载这个页面,你将会注意到这两个日期不同。一个是“动态“,一个是“静态”。你能够在{dynamic}...{/dynamic}之间作任何事情,并且保证它将不会像剩下的页面一样被缓存。

PHP 相关文章推荐
SSI指令
Nov 25 PHP
使用PHP提取视频网站页面中的FLASH地址的代码
Apr 17 PHP
php 数组的一个悲剧?
May 11 PHP
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
Aug 02 PHP
PHP 无限分类三种方式 非函数的递归调用!
Aug 26 PHP
PHP句法规则详解 入门学习
Nov 09 PHP
php4与php5的区别小结(配置异同)
Dec 20 PHP
PHP中最容易忘记的一些知识点总结
Apr 28 PHP
浅谈php中include文件变量作用域
Jun 18 PHP
PHP提取字符串中的手机号正则表达式怎么写
Jul 17 PHP
php 可变函数使用小结
Jun 12 PHP
PHP+Oracle本地开发环境搭建方法详解
Apr 01 PHP
CodeIgniter CLI模式简介
Jun 17 #PHP
CI框架在CLI下执行占用内存过大问题的解决方法
Jun 17 #PHP
CI框架自动加载session出现报错的解决办法
Jun 17 #PHP
Thinkphp模板中截取字符串函数简介
Jun 17 #PHP
CI框架中zip类应用示例
Jun 17 #PHP
php获取网页请求状态程序示例
Jun 17 #PHP
php版淘宝网查询商品接口代码示例
Jun 17 #PHP
You might like
实现“上一页”和“下一页按钮
2006/10/09 PHP
PHP网站安装程序制作的原理、步骤、注意事项和示例代码
2010/08/01 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
jQuery操作Select的Option上下移动及移除添加等等
2013/11/18 Javascript
JS基于VML技术实现的五角星礼花效果代码
2015/10/26 Javascript
JavaScript为事件句柄绑定监听函数实例详解
2015/12/15 Javascript
js绘制购物车抛物线动画
2020/11/18 Javascript
vue + socket.io实现一个简易聊天室示例代码
2017/03/06 Javascript
Vue开发环境跨域访问问题
2020/01/22 Javascript
js利用拖放实现添加删除
2020/08/27 Javascript
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
[00:15]天涯墨客终极技能展示
2018/08/25 DOTA
Python中的并发编程实例
2014/07/07 Python
python http接口自动化脚本详解
2018/01/02 Python
python验证码识别实例代码
2018/02/03 Python
pyhton列表转换为数组的实例
2018/04/04 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
Linux下远程连接Jupyter+pyspark部署教程
2019/06/21 Python
python中 * 的用法详解
2019/07/10 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
浅谈keras中的后端backend及其相关函数(K.prod,K.cast)
2020/06/29 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
记录一下scrapy中settings的一些配置小结
2020/09/28 Python
用Python实现童年贪吃蛇小游戏功能的实例代码
2020/12/07 Python
CSS3之背景尺寸Background-size使用介绍
2013/10/14 HTML / CSS
CSS3绘制不规则图形的一些方法示例
2015/11/07 HTML / CSS
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
2014/04/14 HTML / CSS
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
初中生个人学习的自我评价
2013/12/04 职场文书
汉语言文学职业规划
2014/02/14 职场文书
农民工讨薪标语
2014/06/26 职场文书
机关作风建设剖析材料
2014/10/11 职场文书
2015年学校教务处工作总结
2015/05/11 职场文书
2015年数学教师工作总结
2015/05/20 职场文书
欢迎新生标语2015
2015/07/16 职场文书
angular异步验证器防抖实例详解
2022/03/31 Javascript