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