• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/html/attributes.php
  • Класс: BitrixMainHtmlAttributes
  • Вызов: Attributes::__toString
public function __toString()
{
	$result = '';

	if (!empty($this->attributes))
	{
		$result = ' ';
		foreach ($this->attributes as $name => $value)
		{
			if (!isset($value))
			{
				continue;
			}

			$escapedName = HtmlFilter::encode($name);

			$isDataAttribute = stripos($name, 'data-') === 0;
			if ($isDataAttribute)
			{
				if (is_array($value))
				{
					$escapedValue = '(' . HtmlFilter::encode(CUtil::PhpToJSObject($value)) . ')';
				}
				elseif (is_bool($value))
				{
					$escapedValue = $value ? 'true' : 'false';
				}
				else
				{
					$escapedValue = HtmlFilter::encode((string)$value);
				}
			}
			else
			{
				$escapedValue = HtmlFilter::encode((string)$value);
			}

			$result .= $escapedName . '="' . $escapedValue . '"';
		}

		$result .= ' ';
	}

	return $result;
}