Как я заставляю NumberFormatter печатать отрицательные значения валюты со знаком "минус"?

Я думаю, что самый простой и быстрый способ сделать это - использовать grep, есть ярлык для использования grep с regexp egrep aka grep -E, поэтому мы просто сделаем

egrep '^\S.+' fileNameWithUnneededNewLines > ClearedFile
7
задан John Carter 22 July 2009 в 09:09
поделиться

1 ответ

Я нашел немного менее хитрый способ изменить поведение локали en_US в соответствии с тем, что я ищу - getPattern () / setPattern () функции.

$cFormatter = new NumberFormatter('en_US', NumberFormatter::CURRENCY);
$sPattern = $cFormatter->getPattern(); // returns "¤#,##0.00;(¤#,##0.00)";

$sMyPattern = "¤#,##0.00;-¤#,##0.00";
$cFormatter->setPattern($sMyPattern);
$cFormatter->formatCurrency(-456, 'USD');  // returns -$456.00
14
ответ дан 6 December 2019 в 14:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: