> php教程 > php >

php四舍五入、精确2-3位小数位及向上取整的方法

来源:网络 文章列表 2019-04-25 8
php内置的round(),intval(),ceil(),floor()函数,可以为我们在数值计算中进行四舍五入、向上取整、向下取整,精确取小数位提供帮助

在日常开发中我们经常会有些数值计算,我们可能需要对计算结果进行四舍五入、保留2,3位小数位,向上取整,向下取整等操作。

在php里也给我们提供了四个常用的数值计算的函数供我们使用。

round()四舍五入取整

intval()舍弃小数位,直接保留整数部分

ceil() 向上取整,有小数就加1

floor()向下取整

 

一、round函数:

语法:float = round ( float val [, int precision] )

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

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如果是字符型的会自动转换为0。

语法: int = intval(mixed var, int [base])

intval(3.14159);  // 3
intval(3.64159);  // 3
intval('ruesin'); //0

 

三、ceil函数这个方法,在我们写分页类计算页数时经常会用到。

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

语法:float = ceil ( float value )

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

常见的页码计算:

$lastpg = ceil($totle/$displaypg); //最后页,也是总页数,用ceil就方便多了。
$lastpg = $lastpg ? $lastpg : 1; //没有显示条目,置最后页为1 
$page = min($lastpg,$page); 
$prepg = $page-1; //上一页 
$nextpg = ($page==$lastpg ? 0 : $page+1); //下一页 
$firstcount = ($page-1)*$displaypg; 

 

四、floor函数,floor函数和ceil函数互相搭配起来可以使php 处理的数据更加真实可靠。

语法:float = floor ( float value )

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

<?php 
 echo floor(1.6); // 1
 echo floor(-1.6); // -2
 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
?>

 

版权声明

本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。

评论

  • 随机获取
点击刷新
精彩评论