当然
$smarty->display(‘与之对应的模板文件名’)还是要写,本来就不想生成缓存,第二
个参数也就不需要了。
$smarty->clear_cache()和$smarty->display()的参数一定要写成一致的
3、局部缓存
首先让我们了解下局部缓存的意思,就是指定同一页面下的某些局部地方生成缓存。
同样的在这里我们也要把思路反转一下。
其实不是指定哪些局部生成缓存,而是哪些局部不生成缓存
(这和部分缓存的操作思想
是类似的
)。
话不多说,先举一个实例
1.php
$time=time();
$smarty->assign(‘time’,$lanmuarr);
function insert_timeget()
{
return time();
}
$smarty->display(’1.html’);
1.html
{$time}
//开启缓存后,重复刷新这个不会变
{insert name=’timeget’}
//开启缓存后,重复刷新这个会变
看懂了这个例子我们来解释下其中的原理
在
PHP 中我们只要定义了
函数名为
insert_自定义补充名的自定义函数,在其中返回的值,不需要 assign()方法传
递,就能直接在模板页面中以
{insert name=’自定义补充名’}的方式调用,同时不会受到缓
存的影响,而实时刷新
好了到这里我们关于
smarty 的 3 中缓存方式就全部讲解完了,有兴趣的朋友可以自己
试验下不同的效果。