• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/web/httpheaders.php
  • Класс: BitrixMainWebHttpHeaders
  • Вызов: HttpHeaders::add
public function add($name, $value)
{
	// compatibility
	$name = (string)$name;

	// PSR-7: The implementation SHOULD reject invalid values and SHOULD NOT make any attempt to automatically correct the provided values.
	if ($name == '' || !static::validateName($name))
	{
		throw new InvalidArgumentException("Invalid header name '{$name}'.");
	}

	if (!is_array($value))
	{
		$value = [$value];
	}

	foreach ($value as $key => $val)
	{
		$value[$key] = (string)$val;
		if (!static::validateValue($value[$key]))
		{
			throw new InvalidArgumentException("Invalid header value '{$value[$key]}'.");
		}
	}

	$nameLower = strtolower($name);

	if (!isset($this->headers[$nameLower]))
	{
		$this->headers[$nameLower] = [
			'name' => $name,
			'values' => [],
		];
	}
	foreach ($value as $val)
	{
		$this->headers[$nameLower]['values'][] = $val;
	}
}