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

在开启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}之间作任何事情,并且保证它将不会像剩下的页面一样被缓存。

时间: 2024-12-21 22:10:18

smarty模板局部缓存方法使用示例_php实例的相关文章

Smarty模板引擎缓存机制详解_php实例

本文实例讲述了Smarty模板引擎缓存机制.分享给大家供大家参考,具体如下: 首先说下smarty缓存和编译,这是两个不同的概念,编译默认情况下是启动的,而缓存机制需要人为开启,smarty编译过的文件还是php文件,所以执行的时候还是编译的,如果涉及到数据库,还是要访问数据库的所以开销也不小啦,所以需要smarty缓存来解决! 1.开启全局缓存 $smarty->cache_dir = "/caches/"; //缓存目录 $smarty->caching = true;

php smarty模板局部缓存方法

如果开启smarty缓存,第一次执行时会将其编译好的输出文件保存到cache目录中,在程序中通过smarty的is_cache()函数检测其 cache文件是否过期,若过期会更新缓存,如果没有过期会自动调用cache文件,省去编译的过程.检测cache过期是看模板文件是否在指定的生命周期内是否更改,这里的更改是是通过检测文件的最近修改时间实现的,不是通过检测模板文件内容.    阻止一个模板文件的 整篇被缓存 : index.php教程: require('smarty.class.php');

ThinkPHP缓存方法S()概述_php实例

thinkPHP的F方法只能用于缓存简单数据类型,不支持有效期和缓存对象.S()缓存方法支持有效期,又称动态缓存方法,使用示例如下: 复制代码 代码如下: // 使用data标识缓存$Data数据 S('data',$Data);  //前面的是缓存标示,后面的是缓存的数据 复制代码 代码如下: // 缓存$Data数据3600秒 S('data',$Data,3600); 复制代码 代码如下: // 删除缓存数据 S('data',NULL);  //第一个参数时缓存的标识名   复制代码 代

Smarty模板常见的简单应用分析_php实例

本文实例分析了Smarty模板常见的简单应用.分享给大家供大家参考,具体如下: 首先要将smarty这个类包含进来: include_once '../libs/Smarty.class.php'; 然后创一个Smarty对象: $smarty = new Smarty; 可以自定义Smarty 的开始结束符,默认为{ } $smarty->left_delimiter ='<<'; //左符号为 << $smarty->right_delimiter='>>

PHP内存缓存功能memcached示例_php实例

下文简单介绍了memcached类的应用示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 一.memcached 简介 在很多场合,我们都会听到 memcached 这个名字,但很多同学只是听过,并没有用过或实际了解过,只知道它是一个很不错的东东.这里简单介绍一下,memcached 是高效.快速的分布式内存对象缓存系统,主要用于加速 WEB 动态应用程序. 二.memcached 安装 首先是下载 memcached 了,目前最新版本是 1.1.12,直接从官方网站即可下载到 memc

thinkphp的c方法使用示例_php实例

1.C方法的作用 a. 加载设置用户的配置,保存在一个C函数内的静态变量$_config 中 b. 读取用户的配置 (从$_congig 中读取) 2. 需求分析: 1.设置变量 1.二维数组 复制代码 代码如下: C(array('DB_PASSWORD'=>'root','DB_USERNAME'=>'root'),'DB'); C('DB.USER_NAME','XIAOCHEN); 2.一维数组 复制代码 代码如下: C('USER_NAME','小陈'); C(array('USER

Zend Framework实现Zend_View集成Smarty模板系统的方法_php实例

本文实例讲述了Zend Framework实现Zend_View集成Smarty模板系统的方法.分享给大家供大家参考,具体如下: Zend_View抽象出了Zend_View_Interface,可以让我们集成不同的视图解决方案,例如可以集成smarty.要在zend中使用其他视图系统作为视图,只要实现Zend_View_Interface接口即可. Zend_View_Interface的接口定义: <?php /** * Interface class for Zend_View compa

Smarty模板引擎缓存机制详解

本文实例讲述了Smarty模板引擎缓存机制.分享给大家供大家参考,具体如下: 首先说下smarty缓存和编译,这是两个不同的概念,编译默认情况下是启动的,而缓存机制需要人为开启,smarty编译过的文件还是php文件,所以执行的时候还是编译的,如果涉及到数据库,还是要访问数据库的所以开销也不小啦,所以需要smarty缓存来解决! 1.开启全局缓存 $smarty->cache_dir = "/caches/"; //缓存目录 $smarty->caching = true;

Smarty模板简单配置与使用方法示例_php实例

本文实例讲述了Smarty模板简单配置与使用方法.分享给大家供大家参考,具体如下: 在Smarty目录中建立templates,templates_c,configs,cache目录.以便Smarty进行编译和缓存. 建立smarty_inc.php文件对smarty进行配置如下: <?php include_once("./smarty/Smarty.class.php"); //包含smarty类文件 $smarty = new Smarty(); //建立smarty实例对