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 相关文章推荐
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
May 27 PHP
PHP stristr() 函数(不区分大小写的字符串查找)
Jun 03 PHP
php excel类 phpExcel使用方法介绍
Aug 21 PHP
php获取后台Job管理的实现代码
Jun 10 PHP
PHP通过正则表达式下载图片到本地的实现代码
Sep 19 PHP
PHP+jQuery实现自动补全功能源码
May 15 PHP
PHP转换IP地址到真实地址的方法详解
Jun 09 PHP
关于PHP session 存储方式的详细介绍
Jun 25 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
Aug 04 PHP
php获取json数据所有的节点路径
May 17 PHP
PHP 常用的header头部定义汇总
Jun 19 PHP
在laravel-admin中列表中禁止某行编辑、删除的方法
Oct 03 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
解决控件遮挡问题:关于有窗口元素和无窗口元素
2007/01/28 PHP
浅析PHP Socket技术
2013/08/02 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
phpinfo()中Loaded Configuration File(none)的解决方法
2017/01/16 PHP
详细解读php的命名空间(二)
2018/02/21 PHP
Laravel服务容器绑定的几种方法总结
2020/06/14 PHP
PHP执行系统命令函数实例讲解
2021/03/03 PHP
Avengerls vs Newbee BO3 第二场2.18
2021/03/10 DOTA
用JQuery实现全选与取消的两种简单方法
2014/02/22 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
JQuery包裹DOM节点的方法
2015/06/11 Javascript
javascript 中事件冒泡和事件捕获机制的详解
2017/09/01 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
微信小程序数据分析之自定义分析的实现
2018/08/17 Javascript
[45:18]2018DOTA2亚洲邀请赛 4.3 突围赛 Optic vs iG 第一场
2018/04/04 DOTA
从零学Python之入门(三)序列
2014/05/25 Python
python线程池(threadpool)模块使用笔记详解
2017/11/17 Python
浅谈python日志的配置文件路径问题
2018/04/28 Python
解决python opencv无法显示图片的问题
2018/10/28 Python
python3中property使用方法详解
2019/04/23 Python
python-Web-flask-视图内容和模板知识点西宁街
2019/08/23 Python
vscode配置anaconda3的方法步骤
2020/08/08 Python
Python爬虫教程之利用正则表达式匹配网页内容
2020/12/08 Python
Web前端绘制0.5像素的几种方法
2017/08/11 HTML / CSS
Reebonz中国官网:新加坡奢侈品购物网站
2017/03/17 全球购物
HQhair美国/加拿大:英国化妆品、美容及美发产品商城
2019/04/15 全球购物
越南综合购物网站:Lazada越南
2019/06/10 全球购物
OLEDBConnection和SQLConnection有什么区别
2013/05/31 面试题
WINDOWS域的具体实现方式是什么
2014/02/20 面试题
广告学毕业生求职信
2014/01/30 职场文书
企业办公室主任岗位职责
2014/02/19 职场文书
2014学雷锋活动总结
2014/03/09 职场文书
2014年计生标语
2014/06/23 职场文书
共青团员自我评价范文
2014/09/14 职场文书
班级联欢会主持词
2015/07/03 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书