GetTemplateCachedData
Описание
mixed GetTemplateCachedData();
Метод GetTemplateCachedData вызывают, если не используется встроенное в компонент кэширование и при этом вызов IncludeComponentTemplate кэшируется. Этот метод возвращает данные, которые необходимо сохранить в кэше, а потом восстановить из кэша и вернуть шаблону методом SetTemplateCachedData. Нестатический метод.
Смотрите также
Пример
// Проверка и инициализация входных параметров
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-2025, «1С-Битрикс», 2025