Função money_format() do PHP

Exemplo

Formato internacional en_US:

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"en_US");
echo money_format("O preço é %i", $number);
?>

Saída do código acima:

O preço é USD 1,234.56

Definição e uso

A função money_format() retorna a string formatada como string monetária.

A função insere um número formatado no lugar do símbolo de porcentagem (%) da string principal.

Notas:A função money_format() não funciona na plataforma Windows.

Dica:Essa função é frequentemente usada com setlocale() Usar funções juntas.

Dica:Para ver todos os códigos de idioma disponíveis, acesse nossaManual de código de idioma

Sintaxe

money_format(string,number)
Parâmetros Descrição
string

Obrigatório. Define a string a ser formatada e como formatar as variáveis dentro dela.

Valores de formato possíveis:

Preenchimento e sinal:

  • =f - Define o caractere (f) como preenchimento (por exemplo: %=t usa "t" como preenchimento). O preenchimento padrão é um espaço.
  • ^ - Remove o uso de caracteres de agrupamento.
  • + ou ( - Define como os números positivos e negativos devem ser exibidos. Se usar "+", usará o + e - configurados localmente (normalmente, um sinal antes do número negativo, sem sinal antes do número positivo). Se usar "(", o número negativo será colocado dentro de parênteses. O padrão é usar "+".
  • ! - Pára o uso do símbolo monetário na string de saída.
  • - Se usar "-", todos os campos estarão alinhados à esquerda. O alinhamento padrão é à direita.

Comprimento da coluna:

  • x - Define o comprimento mínimo da coluna (x). O valor padrão é 0.
  • #x - Define o número máximo de dígitos à esquerda do ponto decimal (x). Usado para manter a alinhamento da saída formatada na mesma coluna. Se o número de dígitos for maior que x, essa regra será ignorada.
  • .x - Especifica o número máximo de dígitos à direita do ponto decimal (x). Se x for 0, o ponto decimal e os dígitos à direita não serão exibidos. O padrão é a configuração local.

Caractere de conversão:

  • i - O número é formatado no formato de moeda internacional.
  • n - O número é formatado no formato de moeda do país.
  • % - Retorna o caractere %.

Notas:Se forem usados vários valores de formato, eles devem aparecer na ordem acima.

Notas:A função é influenciada pelas configurações locais.

number Obrigatório. O número a ser inserido na posição do símbolo % da string formatada.

Detalhes Técnicos

Retorno:

Retorna a string formatada.

Os caracteres antes e após a string formatada serão mantidos. Números não numéricos retornarão NULL e gerarão E_WARNING.

Versão PHP: 4.3.0+

Mais Exemplos

Exemplo 1

Formato internacional com 2 dígitos decimais (Alemanha):

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"de_DE");
echo money_format("%.2n", $number);
?>

Saída do código acima:

1 234,56 EUR

Exemplo 2

Número negativo, com () indicando o sinal negativo, precisão à direita de 2 dígitos e "*" como caractere de preenchimento:

<?php
$number = -1234.5672;
echo money_format("%=*(#10.2n",$number);
?>

Saída do código acima:

(******1234.57)