Como mostrar um número para dois locais decimais em PHP
-
Utilize
number_format()Função para mostrar um número para duas casas decimais em PHP -
Utilize
round()Função para mostrar um número para duas casas decimais em PHP -
Utilize
sprintf()Função para mostrar um número para duas casas decimais em PHP
Neste artigo, vamos introduzir métodos para mostrar um número com duas casas decimais em PHP.
- Utilizando a função
number_format() - Utilizando a função
round() - Utilizando a função
sprintf()
Utilize number_format() Função para mostrar um número para duas casas decimais em PHP
A função embutida number_format() é utilizada para formatar um número. Por formatação, queremos dizer que o número é exibido com um ponto decimal e um separador de milhar. Ela também arredonda um número, se necessário. Podemos utilizar esta função para mostrar um número com duas casas decimais. A sintaxe correta para usar esta função é a seguinte
number_format($number, $NumOfDecimals, $decimalIndicator, $thousandSeparator)
| Parmater | Descrição | |
|---|---|---|
$number |
obrigatório | o número a ser formatado |
$NumOfDecimals |
opcional | o número de valores decimais após o ponto decimal |
$decimalIndicator |
opcional | um ponto decimal personalizado para o número. Se omitido, o ponto decimal por padrão é . |
$thousandSeparator |
opcional | um separador personalizado de milhares. Se omitido, o mil separador por padrão é ",". |
Códigos de exemplo:
<?php
$number1 = 5;
$number2 = 34.600;
$number3 = 15439.093;
$format_number1 = number_format($number1, 2);
$format_number2 = number_format($number2, 2);
$format_number3 = number_format($number3, 2, "d", "@");
echo "The number $number1 after formating is: $format_number1 \n";
echo "The number $number2 after formating is: $format_number2 \n";
echo "The number $number3 after formating is: $format_number3 \n";
?>
Esta função tem três parâmetros opcionais, mas não permite três parâmetros. Ela permite que um, dois e quatro parâmetros sejam passados. Neste exemplo, os $number1 e $number2 são formatados com duas casas decimais com o ponto decimal padrão. Mas o $number3 é formatado com o ponto decimal personalizado "d" e o separador de milhares "@".
Resultado:
The number 5 after formating is: 5.00
The number 34.6 after formating is: 34.60
The number 15439.093 after formating is: 15@439d09
Utilize round() Função para mostrar um número para duas casas decimais em PHP
A função round() é utilizada para arredondar um número ou valor de flutuação. Podemos arredondar um número para nossas casas decimais desejadas. A sintaxe correta para utilizar esta função é a seguinte
round($number, $decimalPlaces, $mode);
| Parmater | Descrição | |
|---|---|---|
$number |
obrigatório | o número a ser formatado |
$decimalPlaces |
opcional | o número de valores decimais após o ponto decimal |
$mode |
opcional | modo de arredondamento |
Códigos de exemplo:
<?php
$number1 = 5;
$number2 = 34.6;
$number3 = 15439.093;
$format_number1 = round($number1, 2);
$format_number2 = round($number2, 2);
$format_number3 = round($number3, 2);
echo "The number $number1 after rounding is: $format_number1 \n";
echo "The number $number2 after rounding is: $format_number2 \n";
echo "The number $number3 after rounding is: $format_number3 \n";
?>
O importante aqui é observar que ele não afeta um número ou um valor de flutuação com um ponto decimal se quisermos arredondá-los para duas casas decimais.
Resultado:
The number 5 after rounding is: 5
The number 34.6 after rounding is: 34.6
The number 15439.093 after rounding is: 15439.09
Quando o número original tiver menos dígitos decimais do que as casas decimais a serem formatadas, a função round() não adicionará zeros no final do número.
Você deve utilizar o método number_format() se duas casas decimais forem necessárias para todos os números, incluindo números inteiros.
Utilize sprintf() Função para mostrar um número para duas casas decimais em PHP
A função embutida sprintf() formata uma string de acordo com um determinado formato. Ela pode ser utilizada para mostrar um número com duas casas decimais. A sintaxe correta para utilizar esta função é a seguinte
sprintf($format, $parameter1, $parameter2, ... , $parameterN);
O parâmetro $format é o formato que especifica como as variáveis estarão na string. O próximo parâmetro $parameter1 é a primeira variável cujo valor será atribuído ao primeiro % na string. O parâmetro $parameter2 é a segunda variável cujo valor será atribuído ao segundo % na string. Desta forma, podemos inserir N variáveis para sinais de N %.
<?php
$num = 67;
$number = sprintf('%.2f', $num);
echo "The number upto two decimal places is $number";
?>
Aqui, utilizamos %f para um valor de flutuação. O %.2f indica que o valor de flutuação será de até duas casas decimais.
Resultado:
The number up to two decimal places is 67.00