Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá. Tenho um sistema em PHP, que calcula a porcentagem do desconto de um certo produto, observe:
<?php
$valor_produto = 1699.99. $desconto = 15. $novo_preco = $valor_produto - (($desconto * $valor_produto) / 100). echo $novo_preco.?> O problema é que o resultado será algo do tipo: 1444.9915, e como isso é dinheiro R$, preciso formatar esse valor. E ai que eu conto com a ajuda de voces. Preciso transformar esse valor: 1444.9915 em R$1444,99. Mas somente deve transformar o valor quando ele tiver mais numeros que o normal (Em 1444.9915 o correto seria 1444,99). Conto com a ajuda de voces!>
Veja a função round().
$num = round( $num, 2 );
Dei uma pesquisada aqui e tentei utilizar a função, só nao entendi esse segundo parametro 2.
Tipo:
$variavel = round($num, 2 (que valor é esse? ) ;
Apartir da função round(), cheguei a função number_format, que é ainda mais completa. :D
echo number_format($novo_preco_arrendondado, 2, ',', '.');
As descrições dos parâmetros sempre estarão no Manual do PHP. Veja: http://br2.php.net/round
O segundo parâmetro de round() é a quantidade de dígitos após o separador decimal.
number_format() é bem mais completo, sim. Além de arredondar, ele pode formatar o número no padrão brasileiro. Apenas note que ele só deve ser usado para exibição. Qualquer cálculo deve ser feito usando o ponto como separador decimal.
Veja a função round().
$num = round( $num, 2 );