rockstardev
rockstardev

Reputation: 13537

Zend2: Specify currency prefix?

In Zend2 you can do this:

<?php echo $this->currencyFormat(120, 'ZAR'); ?>

This will result in:

ZAR 120.00

However, I want to end up with:

R 120.00

How can I set the prefix to rather be the currency symbol, as apposed to the code? The following doesn't work (obviously):

<?php echo $this->currencyFormat(120, 'R'); ?>

Upvotes: 1

Views: 119

Answers (1)

rockstardev
rockstardev

Reputation: 13537

Figured it out myself. Easy as this:

$helper->setCurrencyPattern('R #0.#');

So the complete code which allows me to control everything in one place (Module.php) is as follows:

class Module
{
    public function getConfig()
    {
        return array(
            'view_helpers' => array(
                'factories' => array(
                    'currencyFormat' => function($sm) 
                    {
                        $helper = new \Zend\I18n\View\Helper\CurrencyFormat;
                        $helper->setCurrencyCode("ZAR");
                        $helper->setLocale('us_ZA');
                        $helper->setCurrencyPattern('R #0.#');

                        return $helper;
                    },
                )
            ),
        );
    }
}

Enjoy...

Upvotes: 1

Related Questions