有什么方法可以避免Smarty 2中的捕获缓存?

时间:2013-02-18 18:45:22

标签: smarty smarty2

我在页面上多次显示一些捕获的内容,我需要阻止它们被缓存,因为它第二次呈现错误的值。我已经了解到在Smarty 3中,有新的{nocache}块和nocache标志可用于防止缓存变量,我相信在这种情况下可以帮助我。是否有任何替代方法可以在Smarty 2中执行相同操作,或者唯一的方法是升级到Smarty 3以获得此功能?

1 个答案:

答案 0 :(得分:0)

查看caching section of the Smarty2 Documentation,他们描述了如何应对这种情况的一些可能性:

  

您可以使用insert模板保持页面的某些部分动态   功能。假设除了横幅之外,整个页面都可以缓存   显示在页面的侧面。使用insert   横幅的功能,你可以保持这个元素在动态内   缓存的内容。

另一种方法是在显示之前清除特定模板的缓存:

require('Smarty.class.php');
$smarty = new Smarty;
...
$smarty->clear_cache('your_template_without_cache.tpl');