0
我想要使用PHP舍入數字。PHP向下舍入
我已經設法做到這一點,如果值有一個小數位,使用下面的這個方法。
$val = floor($val * 2)/2;
echo 'hello'. $val;
如果我試圖本輪下跌不會有小數位的值,上面的代碼是行不通的。
我想要捨棄的值。
32456 => 32000
4567 => 4000
38999 => 38000
我想要使用PHP舍入數字。PHP向下舍入
我已經設法做到這一點,如果值有一個小數位,使用下面的這個方法。
$val = floor($val * 2)/2;
echo 'hello'. $val;
如果我試圖本輪下跌不會有小數位的值,上面的代碼是行不通的。
我想要捨棄的值。
32456 => 32000
4567 => 4000
38999 => 38000
有幾種方法可以做到這一點。最常見的方式(四捨五入到最接近1000)將是這樣的:
function roundDown1000($n)
{
return floor($n/1000) * 1000;
}
更普遍:
function roundDown($n, $increment)
{
return floor($n/$increment) * $increment;
}
如果你願意,你也可以做$n - ($n % 1000)
,但這將得到奇怪的結果爲$n < 0
。
如果數字沒有分數,'$ val * 2'也是一個整數,所以'floor()'不會改變它。 – Barmar
指[round thousand hundrard etc.](https://stackoverflow.com/q/43932648/6521116) –