• Модуль: location
  • Путь к файлу: ~/bitrix/modules/location/lib/entity/address/converter/stringconverter.php
  • Класс: BitrixLocationEntityAddressConverterStringConverter
  • Вызов: StringConverter::convertToString
static function convertToString(Address $address, Format $format, string $strategyType, string $contentType): string
{
	if($strategyType === self::STRATEGY_TYPE_TEMPLATE
		|| $strategyType === self::STRATEGY_TYPE_TEMPLATE_COMMA
		|| $strategyType === self::STRATEGY_TYPE_TEMPLATE_NL
		|| $strategyType === self::STRATEGY_TYPE_TEMPLATE_BR
	)
	{
		$delimiter = null;

		switch ($strategyType)
		{
			case self::STRATEGY_TYPE_TEMPLATE_COMMA:
				$delimiter = ', ';
				break;
			case self::STRATEGY_TYPE_TEMPLATE_NL:
				$delimiter = "n";
				break;
			case self::STRATEGY_TYPE_TEMPLATE_BR:
				$delimiter = '
'; break; } $result = self::convertToStringTemplate( $address, $format->getTemplate(), $contentType, $delimiter, $format ); } elseif($strategyType === self::STRATEGY_TYPE_FIELD_SORT) { $result = self::convertToStringByField($address, $format, $contentType); } elseif($strategyType === self::STRATEGY_TYPE_FIELD_TYPE) { $fieldSorter = static function(FormatField $a, FormatField $b): int { $aType = $a->getType(); $bType = $b->getType(); if($aType === 0) { $result = -1; } elseif ($bType === 0) { $result = 1; } else { $result = $aType - $bType; } return $result; }; $result = self::convertToStringByField($address, $format, $contentType, $fieldSorter); } else { throw new ArgumentOutOfRangeException('strategyType'); } return $result; }