¿Cómo redondeo un número al millar más cercano?
¿Cómo redondear a los Mil más cercanos?
function round($var) {
// Round it
}
¿Cómo redondeo un número al millar más cercano?
¿Cómo redondear a los Mil más cercanos?
function round($var) {
// Round it
}
PHP permite precisión negativo para round
tal como con:
$x = round ($x, -3); // Uses default mode of PHP_ROUND_HALF_UP.
Considerando una precisión positivo indica dónde redondear después de el punto decimal, precisiones negativos proporcionan la la misma potencia antes de el punto decimal. Por lo tanto:
n round(1111.1111,n)
== ==================
3 1111.111
2 1111.11
1 1111.1
0 1111
-1 1110
-2 1100
-3 1000
como una solución general, incluso para idiomas que no lo tienen incorporado, sólo tiene que hacer algo como:
500
.1000
(y trunque al entero si es necesario).1000
.Esto es, por supuesto, asumiendo que usted quiere el comportamiento PHP_ROUND_HALF_UP
. Hay algunos que piensan que redondear a los banqueros, PHP_ROUND_HALF_EVEN
, es mejor para reducir los errores acumulativos, pero ese es un tema para una pregunta diferente.
Uso round
Uso del round function como se ha mencionado en otras críticas round($number, -3)
.
También puede dividir su número por 1,000, redondear al número entero más cercano y luego multiplicar por 1,000.
Además, si desea redondear, puede dividir entre 1.000, anular el cociente, forzarlo a un número entero, negarlo de nuevo y luego multiplicarlo por 1.000.
de: http://us3.php.net/manual/en/function.round.php
$x = round ($x, -3);
rounded_number = round(original_number, -3);
Sólo para su información simple cálculo de Mikel answer es más rápido que round(): fuente
Test name Repeats Result Performance
calculation 10000 0.030229 sec +0.00%
round 10000 0.040981 sec -35.57%
prueba here.
¡Solo un pequeño cambio puede ayudar a redondear!
$x = ceil(220.20/1000) * 1000;
echo $x;
Aquí es una respuesta a redondear hasta la próxima mil:
abs(round(($a - 500), -3)) . "\n";
500-999 luego se redondea a 0 y 1000-1999 redonda a 1000, etc.
Si queremos que se inicia en 1000, a continuación, sólo hacer
abs(round(($a + 500), -3)) . "\n";
¡Salud!
redondear hasta potencia de 10, http://stackoverflow.com/q/43932648/6521116 –