Если я использую функцию money_format, она правильно печатает сумму в венгерском формате:
$ php -a
Interactive mode enabled
php > setlocale(LC_MONETARY, 'hu_HU');
php > $number = 1234.5672;
php > echo money_format('%n', $number)."\n";
1.234,57 Ft
Но если я попытаюсь с классом NumberFormatter, он возвращает неправильный формат
$ php -a
Interactive mode enabled
php > $f = new NumberFormatter('hu_HU', NumberFormatter::CURRENCY);
php > $f->setAttribute($f::FRACTION_DIGITS, 2);
php > echo $f->formatCurrency('1234.5672', 'HUF')."\n";
1 234,57 Ft
Я думаю, что это ошибка.
Это зависит от того, какая операционная система используется. это будет отличаться в зависимости от Windows и Linux.
Некоторое время это не работает в Windows
Других решений пока нет …