Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Not an Issue
-
Affects Version/s: 1.10.6
-
Fix Version/s: 1.10.7
-
Component/s: Zend_Currency
-
Labels:None
Description
I noted this bug in 1.10, then i saw a solved issue for this in 1.9, but i updated to 1.10.6 and the bug still exists.
$currency = new Zend_Currency(array('value'=>100));
print $currency; //Prints '$100.00' - correct is '$ 100.00'
$currency = new Zend_Currency(array('value'=>100));
$currency->setFormat(array('display' => Zend_Currency::USE_NAME));
print $currency; //Prints 'US Dollar100.00' - correct is 'US Dollar 100.00'
As you are referring to US DOLLAR and did not gave additional information I must expect that you are using en_US as locale and therefor USD as regional currency.
According to CLDR the locale en_US refers to the locale en without additional information.
The locale en defines currency representations as "¤#,##0.00;(¤#,##0.00)"
This means that a value like 1000 would be represented as
"$1,000.00".
When en would be represented with a space between currency and number format it would be "¤ #,##0.00" as it is defined in several other locales.
When you want to have a output which is different to the represenation from CLDR you must define your own output format.
Therefor closing as non-issue.