NumberFormatter: странное поведение со знаком минус в разных локалях ⇐ Php
-
Гость
NumberFormatter: странное поведение со знаком минус в разных локалях
Я столкнулся с проблемой в Symfony/Form, которая использует NumberFormatter для форматирования поля NumberType. Наш проект многоязычный, и для каждой страны мы используем разные языки.
$formatter->format() возвращает другой знак минус для отрицательных чисел. Например:
$formatter = new \NumberFormatter('en', \NumberFormatter::DECIMAL); $value = $formatter->format('-150'); var_dump ($ значение); // строка(4) "-150" $formatter = новый \NumberFormatter('lt', \NumberFormatter::DECIMAL); $value = $formatter->format('-150'); var_dump ($ значение); // string(6) "−150"
Я столкнулся с проблемой в Symfony/Form, которая использует NumberFormatter для форматирования поля NumberType. Наш проект многоязычный, и для каждой страны мы используем разные языки.
$formatter->format() возвращает другой знак минус для отрицательных чисел. Например:
$formatter = new \NumberFormatter('en', \NumberFormatter::DECIMAL); $value = $formatter->format('-150'); var_dump ($ значение); // строка(4) "-150" $formatter = новый \NumberFormatter('lt', \NumberFormatter::DECIMAL); $value = $formatter->format('-150'); var_dump ($ значение); // string(6) "−150"
Мобильная версия