(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::formatCurrency -- numfmt_format_currency — Formata um valor de moeda
Estilo orientado a objetos
Estilo procedural
Formata o valor de moeda de acordo com as regras de formatação.
formatter
Objeto NumberFormatter.
amount
O valor numérico monetário.
currency
O código de moeda de 3 letras ISO 4217 indicando a moeda a ser usada.
String representando o valor monetário formatado, ou false
em caso de falha.
Exemplo #1 Exemplo de numfmt_format_currency()
<?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";
?>
Exemplo #2 Exemplo OO
<?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";
?>
O exemplo acima produzirá:
1.234.567,89 € 1.234.567,89 RUR 1 234 567,89€ 1 234 567,89р.
Nota:
Formatos possíveis por este método não usam todas as possibilidades da biblioteca ICU subjacente, como por exemplo usar o símbolo da moeda em sua forma curta ou abreviada.
Para usar todas as possibilidades, use a função msgfmt_format_message().