views:

47

answers:

2

Hi

I've used Zend_Money to format currency as follow

$currency = new Zend_Currency(array('value' => $money,
                                    'currency' => 'CAN', 
                                    'format' => 'fr'));

// output -> 100,00 $

Which display normally on my local development system (wamp on windows)

But when i put it online on my testing server (apache on windows (not my choice and i can't change it :( ), the code output becomes

// output -> 100,00 €

I would like to know if someone has ever encountered such issue and where i need to look to find the solution

Thanks

+3  A: 

Zend_Currency is locale aware. Try to pass in 'locale' => 'fr' to see if it makes a difference:

locale: Defines a locale for this currency. It will be used for detecting the default values when other settings are omitted. Note that when you don't set a locale yourself, it will be detected automatically which could lead to problems.

Gordon
+1  A: 

Thanks a lot it goes in the same direction as the solution I choose. I've put a new key in my config file

variable.locale = "fr_CA"

Which is then initiated in the bootstrap as the global locale for the whole application

protected function _initLocale(){
    $variables = Zend_Registry::get('config')->variable;
    $locale = new Zend_Locale($variables->locale);
    Zend_Registry::set('Zend_Locale', $locale);
}

I already have a config key initiated from a previous method in the bootstrap

Jeff