Как сделать так, чтобы php’s localeconv возвращал правильный разделитель тысяч

Я установил свой местный —

setlocale(LC_MONETARY, 'en_US');

Затем попробуйте отформатировать большое число

$conf = localeconv();
echo number_format(1613998, 0, $conf['decimal_point'], $conf['thousands_sep']);

Но число никогда не имеет разделителя тысяч. я хочу 1,613,998 или же 1.613.998, но я только когда-либо получаю 1613998, $conf['thousands_sep'] всегда пустая строка.

я пробовал

setlocale(LC_MONETARY, 'fr_FR');
setlocale(LC_MONETARY, 'fr_FR.UTF-8');
setlocale(LC_MONETARY, 'en_US.UTF-8');
setlocale(LC_NUMERIC, 'en_US');

Мы запускаем php-7 в Ubuntu 16.04

0

Решение

Я предполагаю, что ваши локали не установлены на сервере.
Бежать locale -a перечислить все доступные локали.
Затем запустите:

sudo locale-gen en_US
sudo locale-gen en_US.UTF-8

и обновите свой язык

sudo update-locale
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector