本文目录一览:
php取整的几种方式
php最常用的是下面两个函数:
floor(),向下取整,舍去所有小数位,整数位不变。
ceil(),向上取整,小数全部舍去,整数位加一。
php如何保留小数点后2位并且取整?
/*
*$num 要处理的浮点数
*$digits 保留的小数位数
* 实现思路:先乘以10的小数位数次方,用floor向下取整,再除以除数得到舍去后面位数的结果
* 最后再用sprintf配合位数再取一次值(此处是为了解决有些数字,最后一位为零时不显示问题)
*/
function floorFloat($num, $digits) {
$num = floatval($num);
$multiple = pow(10, $digits);
$tempNum = floor($num*$multiple);
return sprintf('%.'.$digits.'f', $tempNum/$multiple);
}
PHP取整数函数常用的四种方法小结
ceil
—
进一法取整
说明
float
ceil
(
float
value
)
返回不小于
value
的下一个整数,value
如果有小数部分则进一位。ceil()
返回的类型仍然是
float,因为
float
值的范围通常比
integer
要大。
例子
1.
ceil()
例子
复制代码
代码如下:
?php
echo
ceil(4.3);
//
5
echo
ceil(9.999);
//
10
?
floor
—
舍去法取整
说明
float
floor
(
float
value
)
返回不大于
value
的下一个整数,将
value
的小数部分舍去取整。floor()
返回的类型仍然是
float,因为
float
值的范围通常比
integer
要大。
例子
1.
floor()
例子
复制代码
代码如下:
?php
echo
floor(4.3);
//
4
echo
floor(9.999);
//
9
?
round
—
对浮点数进行四舍五入
说明
float
round
(
float
val
[,
int
precision]
)
返回将
val
根据指定精度
precision(十进制小数点后数字的数目)进行四舍五入的结果。precision
也可以是负数或零(默认值)。
例子
1.
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
?
intval—对变数转成整数型态
例子intval()
复制代码
代码如下:
?php
echo
intval(4.3);
//4
echo
intval(4.6);
//
4
?