SetTemplateCachedData
Описание
void SetTemplateCachedData( mixed templateCachedData );
Метод SetTemplateCachedData вызывают, если не используется встроенное в компонент кэширование, и при этом вызов CBitrixComponent::IncludeComponentTemplate кэшируется. Этот метод возвращает шаблону данные, которые необходимо было сохранить в кэше. Нестатический метод.
Смотрите также
Пример
// Проверка и инициализация входных параметров
if ($arParams["ID"] <= 0)
$arParams["ID"] = 10;
$arParams["CACHE_TIME"] = IntVal($arParams["CACHE_TIME"]);
$CACHE_ID = SITE_ID."|".$APPLICATION->GetCurPage()."|";
// кэш зависит только от подготовленных параметров без "~"
foreach ($this->arParams as $k => $v)
if (strncmp("~", $k, 1))
$CACHE_ID .= ",".$k."=".$v;
$CACHE_ID .= "|".$USER->GetGroups();
$cache = new CPHPCache;
if ($cache->StartDataCache($arParams["CACHE_TIME"], $CACHE_ID, "/".SITE_ID.$this->GetRelativePath()))
{
// Запрос данных и формирование массива $arResult
$arResult = array("a" => 1, "b" => 2);
// Подключение шаблона компонента
$this->IncludeComponentTemplate();
$templateCachedData = $this->GetTemplateCachedData();
$cache->EndDataCache(
array(
"arResult" => $arResult,
"templateCachedData" => $templateCachedData
)
);
}
else
{
extract($cache->GetVars());
$this->SetTemplateCachedData($templateCachedData);
}
© «Битрикс», 2001-2026, «1С-Битрикс», 2026