Como arredondar números em PHP com a função ROUND()
Função Round(): Arredondamento de números no PHP
O arredondamento de números é uma tarefa trivial e corriqueira em sistemas que realizam cálculos que gerem valores de ponto flutuante (“com casas depois da vírgula”). Por exemplo, um cálculo financeiro pode gerar um número com 6 casas decimais, mas só nos interessam duas delas, pois nossa moeda, o Real, somente possui como divisão os centavos – que usam duas casas decimais apenas.
Mas como arredondar números em um script escrito em PHP?
A função round em PHP permite arredondar um número de ponto flutuante, retornando um valor com uma precisão especificada (número de casas decimais).
Sintaxe:
round(int|float $num, int $precision = 0, int $mode = PHP_ROUND_HALF_UP): float
onde:
- num: Valor a ser arredondado
- precision: número de dígitos decimais para o arredondamento. Se for um valor positivo, o número é arredondado para a quantidade de dígitos significativos após o ponto decimal.
Se a precisão for um valor negativo, o número será arredondado para a quantidade de dígitos significativos antes do separador decimal. Por exemplo, se a precisão for -1, num será arredondado para a casa das dezenas, se for -2, para centenas, e assim por diante. - mode: modo no qual o arredondamento ocorre. Pode ser:
- PHP_ROUND_HALF_UP: arredonda o número para longe do zero, se a última casa decimal arredondada possuir valor 5 ou maior. Por exemplo, 3,5 é arredondado para 4 e -3,5 é arredondado para -4.
- PHP_ROUND_HALF_DOWN: arredonda o número em direção ao zero, se a última casa decimal arredondada possuir valor 5 ou maior. Por exemplo, 3,5 é arredondado para 3 e -3,5 é arredondado para -3.
- PHP_ROUND_HALF_EVEN: arredonda o número para o valor par mais próximo, se a última casa decimal arredondada possuir valor 5 ou maior. Por exemplo, tanto 3,5 quanto 4,5 são arredondados para 4.
- PHP_ROUND_HALF_ODD: arredonda o número para o valor ímpar mais próximo, se a última casa decimal arredondada possuir valor 5 ou maior. Por exemplo, 3,5 é arredondado para 3 e 4,5 é arredondado para 5.
O valor arredondado é retornado como um número float.
Exemplos
<?php $numero = 230.1480; echo round($numero, 2)."<br>"; echo round($numero, 1)."<br>"; echo round($numero, 0)."<br>"; echo round($numero, -1)."<br>"; echo round($numero, -2)."<br>"; echo round($numero, 2, PHP_ROUND_HALF_DOWN)."<br>"; echo round($numero, 1, PHP_ROUND_HALF_UP)."<br>"; ?>
230.15 230.1 230 230 200 230.15 230.1
Outras funções que permitem realizar arredondamento de valores em PHP são as funções ceil() e floor().
Escreva um comentário