php ceil、floor、round、intval数值取整函数总结及注意事项

标签: phpceilfloorroundintval   时间:2016-11-01
本文介绍下php编程中,用于数值计算(取整)的几个函数ceil、floor、round、intval使用实例和注意事项,以及它们在用法上的区别,感兴趣的朋友可以参考下。

注:本网站为码农们提供的大量编程教程:java教程java实例php教程mysql教程css教程html教程javascript教程oracle教程等等,如有兴趣,大家可以学习。

在php编程中,遇到数据处理取整时,有以上四个函数可供选择。

  • ceil
  • floor
  • round
  • intval

这四个函数都可以用来对数值进行取整计算,那么他们之间有什么区别呢?以及在使用过程中需要注意哪些事项呢?

1、ceil — 进一法取整

语法:

float ceil ( float $value )

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

例子:

< ?php 
echo ceil(4.3); // 5 
echo ceil(9.999); // 10 
?>

 

2、floor — 舍去法取整

语法:

float floor ( float $value )

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

例子:

<?php
echo floor(4.3); // 4
echo floor(9.999); // 9
?>

 

3、round — 对浮点数进行四舍五入

语法:

float round ( float $val [, int $precision ] )

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

例子:

<?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
?>

注: PHP 默认不能正确处理类似 “12,300.2″ 的字符串。
注: precision 参数是在 PHP 4 中被引入的。

 

4、intval — 获取变量的整数值

语法:

int intval ( mixed $var [, int $base ] )

说明:通过使用特定的进制转换(默认是十进制),返回变量 var 的 integer 数值。var 可以是任何标量类型。intval() 不能用于 array 或 object。

例子:

<?php
echo intval(4.3); // 4
echo intval(9.999); // 9
?>

注:除非 var 参数是字符串,否则 intval() 的 base 参数不会有效果。

 

注意事项:

floor函数与intval函数功能相同,所不同之处是一个返回的浮点数(float),而另一个是整数(integer),因为 float 值的范围通常比 integer 要大。不过就数值本身来说两者是相等的。

原文地址:http://www.manongjc.com/article/1554.html

分享到