最接近千位的轮数

Shi*_*iro 1 php rounding

我需要将数字舍入到最接近的千位数.我试过了round($x, -3),但输出并不是我想要的.

所需输出的示例:

999 => 1,000
1,000.0001 => 2,000
1,001 => 2,000
1,100 => 2,000
1,600 => 2,000
100,010 => 101,000
Run Code Online (Sandbox Code Playgroud)

eli*_*ide 14

你可以通过结合ceil()一些乘法和除法来做到这一点,如下所示:

function roundUpToNearestThousand($n)
{
    return (int) (1000 * ceil($n / 1000));
}
Run Code Online (Sandbox Code Playgroud)

更一般地说:

function roundUpToNearestMultiple($n, $increment = 1000)
{
    return (int) ($increment * ceil($n / $increment));
}
Run Code Online (Sandbox Code Playgroud)

这是一个演示.


Rwd*_*Rwd 6

我不确定你所追求的是否有特定的功能,但你可以这样做:

(int) ceil($x / 1000) * 1000;
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!