1. 程式人生 > >php中除法取整的方法(round,ceil,floor)

php中除法取整的方法(round,ceil,floor)

PHP中遇到需要將除法所得結果取整的情況時,就需要用到以下方法:

1. round:四捨五入

round() 函式對浮點數進行四捨五入。

語法:round(x, prec)

引數 描述
x 可選。規定要舍入的數字。
prec 可選。規定小數點後的位數。


說明:返回將 x 根據指定精度 prec (十進位制小數點後數字的數目)進行四捨五入的結果。prec 也可以是負數或零(預設值)。

提示:PHP 預設不能正確處理類似 "12,300.2" 的字串。

例:

<?php
echo(round(0.60));
echo(round(0.50));
echo(round(0.49));
echo(round(-4.40));
echo(round(-4.60));
?>
輸出:
1
1
0
-4
-5

2. ceil:向上取整

ceil() 函式向上舍入為最接近的整數。

語法:ceil(x)

引數 描述
x 必須。規定要舍入的數字。


說明:返回不小於 x 的下一個整數,x 如果有小數部分則進一位。ceil() 返回的型別仍然是 float,因為 float 值的範圍通常比 integer 要大。

例:

<?php
echo(ceil(0.60);
echo(ceil(0.40);
echo(ceil(5);
echo(ceil(5.1);
echo(ceil(-5.1);
echo(ceil(-5.9));
?>
輸出:
1
1
5
6
-5
-5

3. floor:向下取整

floor() 函式向下舍入為最接近的整數。

語法:floor(x)

引數 描述
x 必須。規定要舍入的數字。


說明:返回不大於 x 的下一個整數,將 x 的小數部分捨去取整。floor() 返回的型別仍然是 float,因為 float 值的範圍通常比 integer 要大。

例:

<?php
echo(floor(0.60));
echo(floor(0.40));
echo(floor(5));
echo(floor(5.1));
echo(floor(-5.1));
echo(floor(-5.9))
?>
輸出:
0
0
5
5
-6
-6