Handling currency by locale

The technique for handling currency is similar to that for numbers. We will even use the same NumberFormatter class! There is one major difference, however, and it is a show stopper: in order to properly format currency, you will need to have on hand the currency code.

How to do it...

  1. The first order of business is to have the currency codes available in some format. One possibility is to simply add the currency code as an Application\I18n\Locale class constructor argument:
    const FALLBACK_CURRENCY = 'GBP';
    protected $currencyCode;
    public function __construct($localeString = NULL, $currencyCode = NULL)
    {
      // add this to the existing code:
      $this->currencyCode = $currencyCode ?? self::FALLBACK_CURRENCY;
    }

    Note

    This approach, ...

Get PHP 7: Real World Application Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.