Я хочу перебрать один массив и отключить кэширование только для некоторых элементов.Поэтому я хотел сохранить key
и получить элемент по key
в разделе nocache.К сожалению, я не нашел возможности:
назначить кэшированный $rec@key
в разделе nocache,
или сохранить определение переменной key
в кэшированном разделе.
Есть ликаким-либо образом (без умного изменения кода) сделать это?здесь мой test.tpl:
{foreach $array as $rec}
{if $rec.dynamic}
{assign var="key" value=$rec@key}
{nocache}
{$array[$key].text}
{/nocache}
{else}
{$rec.text}
{/if}
{/foreach}
и test.php:
<?php
include_once 'libs/Smarty.class.php';
$smarty=new smarty();
$smarty->caching=1;
$smarty->assign('array',array(
'r1'=>array('dynamic'=>true,'text'=>'dynamic'),
'r2'=>array('dynamic'=>false,'text'=>'static')
));
$smarty->display('test.tpl');
(конечно, я буду использовать его для гораздо более сложных вещей, чем отображение текста :)) Я много пробовализ трюков и сам я думаю, что это невозможно, пожалуйста, скажите мне, что я не прав:)