• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/http.php
  • Класс: CHTTP
  • Вызов: CHTTP::urlAddParams
static function urlAddParams($url, $add_params, $options = array())
{
	if(!empty($add_params))
	{
		$params = array();
		foreach($add_params as $name => $value)
		{
			if(($options["skip_empty"] ?? false) && (string)$value == '')
				continue;
			if(($options["encode"] ?? false))
				$params[] = urlencode($name).'='.urlencode($value);
			else
				$params[] = $name.'='.$value;
		}

		if(!empty($params))
		{
			$p1 = mb_strpos($url, "?");
			if($p1 === false)
				$ch = "?";
			else
				$ch = "&";

			$p2 = mb_strpos($url, "#");
			if($p2===false)
			{
				$url = $url.$ch.implode("&", $params);
			}
			else
			{
				$url = mb_substr($url, 0, $p2).$ch.implode("&", $params).mb_substr($url, $p2);
			}
		}
	}
	return $url;
}