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

PHP_保留两位小数并且四舍五入(可用于精度计算)_保留两位小数并且不四舍五入,

2014-06-26 08:13 561 查看
小数例子:

PHP保留两位小数并且四舍五入

1
$n
=0.1265489;
2
echo
 
sprintf(
"%.2f"
$n
); 
//
0.13
大家可以看到我们用到了sprintf函数对$n进行了格式化%.2f是目标格式,其中2表示两位f表示float(浮点型) 第3为小数6被四舍五入

再看个例子

1
$n=0.1265489
2
echo
substr(sprintf(
"%.3f"
,$n),0,-1);
//
0.12
代码输出了保留2为小数没有四舍五入,实际上我们了解了sprintf的特性会四舍五入小数后我们多保留了一位,然后用substr来截取前2位

取整例子:

1
echo
 
ceil
(4.1);    
//
5
2
echo
 
ceil
(9.999);  
//
10
ceil函数是向上取整函数,什么叫向上呢? 就是说如果超出一点点那就向前进一位如例子中4.1就变成了5。

跟它相反还有一个函数叫floor我们看看它的用法

1
echo
 
floor
(4.1);   
//
4
2
echo
 
floor
(9.999); 
//
9
floor的特性在第二个输出中显的特别明显,那就是不给你多少位小数哪怕是无限接近10也没有用向下取到的整数就是9。

round函数

01
<?PHP
02
  
echo
 
round
(3.4);         
//
3
03
  
echo
 
round
(3.5);         
//
4
04
  
echo
 
round
(3.6);         
//
4
05
  
echo
 
round
(3.6,
0);      
//
4
06
  
echo
 
round
(1.95583,
2);  
//
1.96
07
  
echo
 
round
(1241757,
-3); 
//
1242000
08
  
echo
 
round
(5.045,
2);    
//
5.05
09
  
echo
 
round
(5.055,
2);    
//
5.06
10
?>
round函数在PHP手册中的说明是:

float round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )

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

round 的参数一是数据源,参数二是要保留的小数位而且之后一位(比如你输入2那么第3为是之后一位)被四舍五入,当他是负数的时候,从数据源最后一位开始往前数相应的长度制0并将最后一位四舍五入比如round(123456,-2) 就是123456从6开始往前数两位都变成零,并且最后一位5(从后往前数第一位是6最后一位是5)被四舍五入,输出123500
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐