Print Currency Number Format in PHP

currency, formatting, php

Solution

The easiest answer is `number_format()`.

echo "$ ".number_format($value, 2);

If you want your application to be able to work with multiple currencies and locale-aware formatting (`1.000,00` for some of us Europeans for example), it becomes a bit more complex.

There is `money_format()` but it doesn't work on Windows and relies on `setlocale()`, which is rubbish in my opinion, because it requires the installation of (arbitrarily named) locale packages on server side.

If you want to seriously internationalize your application, consider using a full-blown internationalization library like Zend Framework's Zend_Locale and Zend_Currency.

Problem

I have some price values to display in my page. I am writing a function which takes the float price and returns the formatted currency val with currency code too.. For example, `fnPrice(1001.01)` should print `$ 1,000.01`

Original source