Skip to content

\$caching {/programmers/api-variables/variable-caching/}

这个属性告诉 Smarty 是否将模板的输出缓存到 $cache_dir 中。默认情况下,它设置为常量 Smarty::CACHING_OFF。如果您的模板始终生成相同的内容,建议开启 $caching,因为这可能会带来显著的性能提升。

您还可以为同一个模板设置多个缓存。

  • 常量 Smarty::CACHING_LIFETIME_CURRENT 或 Smarty::CACHING_LIFETIME_SAVED 的值启用缓存。

  • 值为 Smarty::CACHING_LIFETIME_CURRENT 告诉 Smarty 使用当前的 $cache_lifetime 变量来确定缓存是否过期。

  • 值为 Smarty::CACHING_LIFETIME_SAVED 告诉 Smarty 使用生成缓存时的 $cache_lifetime 值。这样,您可以在 获取 模板之前设置 $cache_lifetime,以精确控制特定缓存何时过期。另请参阅 isCached()

  • 如果启用了 $compile_check,则如果此缓存的任何模板或配置文件发生更改,缓存内容将被重新生成。

  • 如果启用了 $force_compile,则缓存内容将始终被重新生成。

另请参阅 $cache_dir$cache_lifetime$cache_modified_checkis_cached()缓存部分