您的位置:首页 > 编程语言 > PHP开发

PHP的取整函数

2015-09-02 15:14 681 查看
PHP的取整函数有四个,分别是ceil、floor、round和intval,下面对它们进行一一介绍:

1. ceil(x):向上舍入为最接近的整数。

返回不小于 x 的下一个整数,x 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

示例:

echo(ceil(0.60)); 输出为1

echo(ceil(0.40)); 输出为1

echo(ceil(5)); 输出为5

echo(ceil(5.1)); 输出为6

echo(ceil(-5.1)); 输出为-5

echo(ceil(-5.9)); 输出为-5

2. floor(x):向下舍入为最接近的整数。

返回不大于 x 的下一个整数,将 x 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

示例:

echo(floor(0.60)); 输出为0

echo(floor(0.40)); 输出为0

echo(floor(5)); 输出为5

echo(floor(5.1)); 输出为5

echo(floor(-5.1)); 输出为-6

echo(floor(-5.9)); 输出为-6

3. round(x,prec):对浮点数进行四舍五入。

返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec也可以是负数或零(默认值)。

示例:(特别注意红色部分)

echo(round(0.60)); 输出为1

echo(round(0.50)); 输出为1

echo(round(0.49)); 输出为0

echo(round(-4.40)); 输出为-4

echo(round(-4.60)); 输出为-5

echo(round(52.3456,-2)); 输出为100

echo(round(49.3456,-2)); 输出为0

4. int intval ( mixed $var [, int $base = 10 ] ):获取变量的整数值。

通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。

echo(intval (0.60)); 输出为0

echo(intval (0.50)); 输出为0

echo(intval (0.49)); 输出为0

echo(intval (-4.40)); 输出为-4

echo(intval (-4.60)); 输出为-4

总结:

  对于一个浮点数,ceil()函数采取进一法取整,只要小数点后的值不为0,都会进一,从而取得比原数大的最小整数,但类型还是float。floor()函数采取舍去法取整,不管小数点后是什么都舍去,从而取得一个比原数小的最大整数,但类型还是float。round()函数采取的则是四舍五入法则,具体数值由保留的小数位和相应位的数字大小决定。intval()函数则是单纯地取得浮点数的整数部分,类型为integer。

注意:

  有些人认为floor()函数和intval()函数功能是相同的,其实不然。首先,得到的数值类型就不同,floor返回的是float类型,intval返回的是integer类型。其次,当浮点数为正数时,这两个函数得到的数值是一样的,但是当浮点数为负数时得到的数值就不同了,例如:floor(-1.99)返回的是-2,而intval(-1.99)返回的却是-1.

  所以,这四个函数虽然都是PHP中的取整函数,但功能却是各不相同的,使用时应该根据自己的实际需要进行选择。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: