(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::formatCurrency -- numfmt_format_currency — Formatea un valor monetario
Estilo orientado a objetos
Estilo por procedimientos
Formatea un valor monetario, según las reglas del formateador.
formatter
El objeto NumberFormatter.
amount
El valor numérico.
currency
El código ISO 4217 de tres letras de la moneda a utilizar.
La cadena que representa el valor monetario formateado, o false
en caso de error.
Ejemplo #1 Ejemplo con numfmt_format_currency(), Estilo por procedimientos
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::CURRENCY );
echo numfmt_format_currency($fmt, 1234567.891234567890000, "EUR")."\n";
echo numfmt_format_currency($fmt, 1234567.891234567890000, "RUR")."\n";
$fmt = numfmt_create( 'ru_RU', NumberFormatter::CURRENCY );
echo numfmt_format_currency($fmt, 1234567.891234567890000, "EUR")."\n";
echo numfmt_format_currency($fmt, 1234567.891234567890000, "RUR")."\n";
?>
Ejemplo #2 Ejemplo con numfmt_format_currency(), estilo POO
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";
$fmt = new NumberFormatter( 'ru_RU', NumberFormatter::CURRENCY );
echo $fmt->formatCurrency(1234567.891234567890000, "EUR")."\n";
echo $fmt->formatCurrency(1234567.891234567890000, "RUR")."\n";
?>
El resultado del ejemplo sería:
1.234.567,89 € 1.234.567,89 RUR 1 234 567,89€ 1 234 567,89р.
Nota:
Los formatos realizables por este método de formateo no pueden utilizar plenamente las posibilidades de la biblioteca ICU subyacente, como por ejemplo el formateo de moneda con un símbolo monetario corto.
Para utilizarlas plenamente, utilice msgfmt_format_message().