对Smarty的本地缓存的几种方法简介

大多数时候,当我们使用Smarty,我们不想缓存整个页面,如天气,股票,等等,然后我们可以让它不缓存,以下3种方法共同实施:

1.insert方法:

插入函数类似于inluce功能,不同的是,包含在插入的内容不被缓存,每次模板调用,函数将被重新执行。例如,我们定义一个函数,显示时间:

复制代码代码如下所示:
功能insert_get_current_time(){
返回日期();
}
然后在模板中:
{名称=get_current_time}


因此,每次打开页面时,它都显示即时时间,而不是缓存。注意这里的函数名称必须以INSERT开头,模板中的名称与它对应。如果我们的函数包含一些参数,那么我们可以在模板中这样做:

复制代码代码如下所示:
{名称=get_current_time 盖= # banner_location_id # SID = # site_id # }
然后,Smarty / /呼叫的功能类似于insert_get_current_time(阵列(盖=12345

返回的结果显示在调用的位置。

2。动态块法:

在Smarty代码:

复制代码代码如下所示:
功能smarty_block_nocache(美元美元美元的参数内容,Smarty)
{
返回$内容;
}
Smarty美元-> register_block('nocache ','smarty_block_nocache,假);


在模板文件中:

复制代码代码如下所示:
这里不需要缓存内容


三.插件块法:

这是大约相同的块,但我们在一个plug-in.build在Smarty /插件目录文件的形式:block.nocache.php,名称必须标准,否则Smarty不能认识它,内容如下:

复制代码代码如下所示:
功能smarty_block_nocache(美元美元美元的参数内容,Smarty)
{
返回$内容;
}


在模板上面的所有时间,不需要缓存的使用是可以的!