摘要:平常开发中会遇到数据处理取整的需求,需要用哪种要看具体需求,php中有以下几种取整函数ceil、floor、round和intval方法。
内容目录:一、ceil — 进一法取整
二、floor — 舍去法取整
三、round — 对浮点数进行四舍五入
四、intval — 获取变量的整数值
一、ceil — 进一法取整函数 float ceil (float $value)
向上取整,有小数就加1,
即返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
ceil() 例子:
ceil(3.14159); // 4
ceil(3.64159); // 4
二、floor — 舍去法取整函数 float floor (float $value)
向下取整
即返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
floor() 例子:
floor(3.14159); // 3
floor(3.64159); // 3
三、round — 对浮点数进行四舍五入函数 float round (float $val [, int $precision ])
四舍五入取整
即返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。
round() 例子
注意: PHP 默认不能正确处理类似 “11,200.3″ 的字符串。
注意: precision 参数是在 PHP 4 中被引入的。
round() 例子:
round(3.14159); // 3
round(3.64159); // 4
round(3.64159, 0); // 4
round(3.64159, 2); // 3.64
round(5.64159, 3); // 3.642
round(364159, -2); // 364200
四、intval — 获取变量的整数值函数 int intval (mixed $var [, int $base ])
直接取整,舍弃小数,保留整数
即通过使用特定的进制转换(默认是十进制),返回变量 var 的 integer 数值。
var 可以是任何标量类型。intval() 不能用于 array 或 object。
intval() 例子:
intval(3.14159); // 3
intval(3.64159); // 3
intval('yunbook'); // 0