round
(PHP 4, PHP 5)
round — Redondea un float
Descripción
float round
( float
$val
[, int $precision = 0
[, int $mode = PHP_ROUND_HALF_UP
]] )
Devuelve el valor redondeado de val con
la precision especificada
(número de dígitos después del punto decimal).
precision puede también ser negativo o cero (valor predeterminado).
Nota: PHP no maneja correctamente cadenas como "12,300.2" por defecto. Consulte conversión desde cadenas.
Parámetros
-
val -
El valor a redondear
-
precision -
Opcionalmente, el número de dígitos decimales a redondear.
-
mode -
Use una de las siguientes constantes para especificar el modo de redondeo.
Constante Descripción PHP_ROUND_HALF_UPRedondea valhacia arriba aprecisionlugares decimales alejándose de cero, cuando está a medio camino. Hace que 1.5 sea 2, y -1.5 sea -2.PHP_ROUND_HALF_DOWNRedondea valhacia abajo aprecisionlugares decimales hacia cero, cuando está a medio camino. Hace que 1.5 sea 1, y -1.5 sea -1.PHP_ROUND_HALF_EVENRedondea valaprecisionlugares decimales hacia el siguiente valor par.PHP_ROUND_HALF_ODDRedondea valaprecisionlugares decimales hacia el siguiente valor impar.
Valores devueltos
El valor redondeado
Ejemplos
Ejemplo #1 Ejemplos de round()
<?php
echo round(3.4); // 3
echo round(3.5); // 4
echo round(3.6); // 4
echo round(3.6, 0); // 4
echo round(1.95583, 2); // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2); // 5.05
echo round(5.055, 2); // 5.06
?>
Ejemplo #2 Ejemplos de mode
<?php
echo round(9.5, 0, PHP_ROUND_HALF_UP); // 10
echo round(9.5, 0, PHP_ROUND_HALF_DOWN); // 9
echo round(9.5, 0, PHP_ROUND_HALF_EVEN); // 10
echo round(9.5, 0, PHP_ROUND_HALF_ODD); // 9
echo round(8.5, 0, PHP_ROUND_HALF_UP); // 9
echo round(8.5, 0, PHP_ROUND_HALF_DOWN); // 8
echo round(8.5, 0, PHP_ROUND_HALF_EVEN); // 8
echo round(8.5, 0, PHP_ROUND_HALF_ODD); // 9
?>
Ejemplo #3 Ejemplos de mode con precisión
<?php
/* Usar PHP_ROUND_HALF_UP com precisión de 1 dígito decimal */
echo round( 1.55, 1, PHP_ROUND_HALF_UP); // 1.6
echo round( 1.54, 1, PHP_ROUND_HALF_UP); // 1.5
echo round(-1.55, 1, PHP_ROUND_HALF_UP); // -1.6
echo round(-1.54, 1, PHP_ROUND_HALF_UP); // -1.5
/* Usar PHP_ROUND_HALF_DOWN com precisión de 1 dígito decimal */
echo round( 1.55, 1, PHP_ROUND_HALF_DOWN); // 1.5
echo round( 1.54, 1, PHP_ROUND_HALF_DOWN); // 1.5
echo round(-1.55, 1, PHP_ROUND_HALF_DOWN); // -1.5
echo round(-1.54, 1, PHP_ROUND_HALF_DOWN); // -1.5
/* Usar PHP_ROUND_HALF_EVEN com precisión de 1 dígito decimal */
echo round( 1.55, 1, PHP_ROUND_HALF_EVEN); // 1.6
echo round( 1.54, 1, PHP_ROUND_HALF_EVEN); // 1.5
echo round(-1.55, 1, PHP_ROUND_HALF_EVEN); // -1.6
echo round(-1.54, 1, PHP_ROUND_HALF_EVEN); // -1.5
/* Usar PHP_ROUND_HALF_ODD com precisión de 1 dígito decimal */
echo round( 1.55, 1, PHP_ROUND_HALF_ODD); // 1.5
echo round( 1.54, 1, PHP_ROUND_HALF_ODD); // 1.5
echo round(-1.55, 1, PHP_ROUND_HALF_ODD); // -1.5
echo round(-1.54, 1, PHP_ROUND_HALF_ODD); // -1.5
?>
Historial de cambios
| Versión | Descripción |
|---|---|
| 5.3.0 |
Se introdujo el parámetro mode.
|
| 5.2.7 | El funcionamiento interno en round() se modificó para adecuarse al estándar C99. |
Ver también
- ceil() - Redondear fracciones hacia arriba
- floor() - Redondear fracciones hacia abajo
- number_format() - Formatear un número con los millares agrupados