• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/web/cookiescrypter.php
  • Класс: BitrixMainWebCookiesCrypter
  • Вызов: CookiesCrypter::unpackCookie
protected function unpackCookie(string $mainCookie, iterable $cookies): string
{
	$mainCookie = $this->removeSign($mainCookie);
	$packedNames = array_flip(array_filter(explode(',', $mainCookie)));
	$parts = [];

	foreach ($cookies as $name => $value)
	{
		if (!isset($packedNames[$name]))
		{
			continue;
		}

		$parts[$packedNames[$name]] = $value;
		if (count($parts) === count($packedNames))
		{
			break;
		}
	}
	ksort($parts);
	$encryptedValue = implode('', $parts);

	return $this->decryptValue($encryptedValue);
}