A continuación se muestran varios ejemplos de uso de la función
money_format() con diferentes cadenas
de formato y configuraciones locales.
<?php
$number = 1234.56;
// Mostremos este número en formato internacional para en_US
setlocale(LC_MONETARY, 'en_US');
echo money_format('%i', $number) . "\n";
// USD 1,234.56
// Y en formato nacional italiano con 2 decimales
setlocale(LC_MONETARY, 'it_IT');
echo money_format('%.2n', $number) . "\n";
// L. 1.234,56
// Uso de un número negativo
$number = -1234.5672;
// Formato nacional de EE.UU., con paréntesis para números negativos
// y 10 dígitos de precisión a la izquierda
setlocale(LC_MONETARY, 'en_US');
echo money_format('%(#10n', $number) . "\n";
// ($ 1,234.57)
// Formato similar al anterior, añadiendo 2 decimales
// para la precisión derecha, y utilizando el carácter de relleno '*'
echo money_format('%=*(#10.2n', $number) . "\n";
// ($********1,234.57)
// Utilicemos ahora la justificación a la izquierda, con un campo de 14 caracteres
// de largo, sin agrupamiento de dígitos, y utilizando el formato internacional
// para de_DE
setlocale(LC_MONETARY, 'de_DE');
echo money_format('%=*^-14#8.2i', 1234.56) . "\n";
// DEM 1234,56****
// Añadamos aún más al ejemplo anterior
setlocale(LC_MONETARY, 'en_GB');
$fmt = 'El valor final es %i (tras un 10 %% de descuento)';
echo money_format($fmt, 1234.56) . "\n";
// El valor final es GBP 1,234.56 (tras un 10 % de descuento)
?>