Пользовательский формат Zend, например, «$ 1 234,56 USD» - PullRequest
0 голосов
/ 25 марта 2010

Я использую модуль Zend Currency для управления валютами в веб-приложении. Я не могу понять, как создать собственный формат для моих валют, так как на страницах документации нет примеров: http://framework.zend.com/manual/en/zend.currency.options.html

Из того, что я там прочитал, я мог использовать параметр формата, чтобы установить формат, но я не могу найти способ как. У кого-нибудь есть хороший пример кода для этой проблемы?

В настоящее время я делаю следующее:

$currency->setFormat(array (display' => Zend_Currency::USE_SYMBOL));

Это работает для отображения только символа, но я также заинтересован в том, чтобы поставить дополнительный пробел после или перед символом и отображать валюты следующим образом:

"1 234,56 долларов США" «1,234,56 евро»

1 Ответ

1 голос
/ 30 марта 2010

Это насколько я пришел, чтобы заставить его работать. Я не уверен, как сказать Zend_Currency использовать мой формат вместо стандартного, но я думаю, что вам придется связываться с Zend_Locale и указывать ему использовать ваш пользовательский формат.

$currency = new Zend_Currency(array(
    'value'  =>  1234.56,
    'currency'  =>  'USD'
));

$currency = Zend_Locale_Format::toNumber(1234.56, array(
    'number_format'  =>  '$ #,##0.00 USD'
));
...