PHP NumberFormatter переопределить систему номеров локали - PullRequest
0 голосов
/ 07 июня 2019

Я смотрю на изменения для поддержки нашего PHP-сайта на арабском языке (ar_SA) и сталкиваюсь с проблемой с числами и датами. Похоже, консенсус заключается в том, что западные цифры предпочтительнее, но NumberFormatter выводит все цифры на арабском для этой локали. Я не уверен, как переопределить это, все еще используя локаль.

Я использую NumberFormatter :: CURRENCY для правильного добавления валюты к сумме, а не к ее добавлению. Как переопределить систему счисления на латиницу, сохранив добавление символа валюты?

public static function format_currency($value, $currency)
{
    $locale = getSessionLocale();
    $fmt = new \NumberFormatter( $locale, \NumberFormatter::CURRENCY );
    return $fmt->formatCurrency($value, $currency);
}

Я хочу, чтобы выходные данные составляли 25 ﷼, а не числа, также выводимые на арабском языке, 100 ٢٥ ٫ ٠٠

Есть предложения?

...