• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/component.php
  • Класс: CBitrixComponent
  • Вызов: CBitrixComponent::getCacheID
public function getCacheID($additionalCacheID = false)
{
	if(!$this->getSiteId())
		$SITE_ID = SITE_ID;
	else
		$SITE_ID = $this->getSiteId();

	if(!$this->getLanguageId())
		$LANGUAGE_ID = LANGUAGE_ID;
	else
		$LANGUAGE_ID = $this->getLanguageId();

	if(!$this->getSiteTemplateId())
		$SITE_TEMPLATE_ID = (defined("SITE_TEMPLATE_ID")? SITE_TEMPLATE_ID:"");
	else
		$SITE_TEMPLATE_ID = $this->getSiteTemplateId();

	$cacheID = $SITE_ID."|".$LANGUAGE_ID.($SITE_TEMPLATE_ID != "" ? "|".$SITE_TEMPLATE_ID:"")."|".$this->__name."|".$this->getTemplateName()."|";

	foreach($this->arParams as $k=>$v)
		if(strncmp("~", $k, 1))
			$cacheID .= ",".$k."=".serialize($v);

	if(($offset = CTimeZone::getOffset()) <> 0)
		$cacheID .= "|".$offset;

	if ($additionalCacheID !== false)
		$cacheID .= "|".serialize($additionalCacheID);

	if ($this->__currentCounter > 1)
	{
		$cacheID .= "|".$this->__currentCounter;
	}

	return $cacheID;
}