• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/component.php
  • Класс: CBitrixComponent
  • Вызов: CBitrixComponent::__prepareComponentParams
public function __prepareComponentParams(&$arParams)
{
	if(!is_array($arParams))
	{
		return;
	}

	$p = $arParams; //this avoids endless loop
	foreach($p as $k => $v)
	{
		$arParams["~".$k] = $v;
		if (isset($v))
		{
			if (is_string($v))
			{
				if (preg_match("/[;&<>"]/", $v))
				{
					$arParams[$k] = htmlspecialcharsEx($v);
				}
			}
			elseif (is_array($v))
			{
				//one more cycle, php 7 bug https://bugs.php.net/bug.php?id=71969
				foreach($v as $kk => $vv)
				{
					if (is_string($vv))
					{
						$arParams[$k][$kk] = htmlspecialcharsEx($vv);
					}
				}
			}
		}
	}
}