小数例子:
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 |
取整例子:
1 | echo ceil (4.1); // 5 |
2 | echo ceil (9.999); // 10 |
跟它相反还有一个函数叫floor我们看看它的用法
1 | echo floor (4.1); // 4 |
2 | echo floor (9.999); // 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