1.234,56 / / Using a negative number $number = -1234.5672; / / US national format, using () for negative numbers / / and 10 digits for left precision setlocale(LC_MONETARY, 'en_US'); echo money_format('%(#10n', $number) ."\n"; / / ($1,234.57) / / Similar format as above, adding the use of 2 digits of right / / precision and '* 'as a fill character echo money_format('%=*(#10.2n', $number) ."\n"; / / ($********1,234.57) / / Let's justify to the left, with 14 positions of width, 8 digits of / / left precision, 2 of right precision, withouth grouping character / / and using the international format for the de_DE locale. setlocale(LC_MONETARY, 'de_DE'); echo money_format('%=*^-14#8.2i', 1234.56) ."\n"; / / DEM 1234,56**** / / Let's add some blurb before and after the conversion specification setlocale(LC_MONETARY, 'en_GB'); $fmt = 'The final value is %i (after a 10%% discount)'; echo money_format($fmt, 1234.56) ."\n"; / / The final value is GBP 1,234.56 (after a 10% discount)?
We will use different locales and format specifications to illustrate the use of this function.