Тонкий пробел в цене для 1С-Битрикс

, Михаил

Если у вас php 5.3, то понадобится обработчик


<?php 
/bitrix/php_interface/init.php
// Установка тонкого пробела в цене для php 5.3
AddEventHandler("currency""CurrencyFormat""thinNbspFormat");
function thinNbspFormat($fSum$strCurrency) {
	    $separator '&#8201;
	';
	    $summ preg_replace('/(?<=\d)\x' bin2hex($separator[0]) . '(?=\d)/'$separatornumber_format($fSum2'.'$separator)).$separator.'руб.';
	    $summ str_replace(".00"""$summ);
	    return $summ
	}
?>


Дальше в Админ-панели, в настройках Валюты->Языковые настройки (/bitrix/admin/currency_edit.php?lang=ru&ID=RUB)

Строка формата для вывода валюты: #&thinsp;руб.

Разделитель тысяч при выводе: Другое значение &thinsp;

Дальше меняем длину одного столбца в SQL таблице: ALTER TABLE `b_catalog_currency_lang` CHANGE `THOUSANDS_SEP` `THOUSANDS_SEP` varchar(10) COLLATE 'utf8_unicode_ci' NULL DEFAULT ' ' AFTER `DEC_POINT`;

И устанавливаем нужное значение разделителя вручную (т.к. в админке ограничение на 5 символов при вводе): UPDATE `b_catalog_currency_lang` SET `THOUSANDS_SEP` = ' ' WHERE `CURRENCY` = 'RUB' AND `LID` = 'ru';