Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php实现保留两位小数的三种方法

php实现保留两位小数的三种方法

黄舟
黄舟asal
2017-11-14 14:36:0420258semak imbas

看到题目相信很多小伙伴都会想到使用四舍五入的方法来实现,这也是一个办法,那么还有其他的方法呢,下面我们就带大家了解一下php实现保留两位小数的几种方式!

php小数点后取两位的方法。

方法一、经常用到小数点后取几位,但不能进位的情况。
比如3.149569取小数点后两位,最后两位不能四舍五入。结果:3.14。

可以使用函数floor。
该函数是舍去取整。例如,floor(4.66456) 结果:4 。 
floor(9.1254) 结果9 。

因此,去小数点后两位,需要先乘以100,然后舍去取整,再除以100,即:

$a=floor(3.149569*100)/100

计算百分数:

代码示例:

$successRate = floor((2/3'])*10000)/10000*100;
$result = $successRate.'%';

输出结果:

66.67%

方法二、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.04
echo round(5.055, 2);    // 5.06
?>

注意:
在对正好一半的分数进行舍入时 round() 在偶数次舍去,在奇数次进位。

如果想迫使它对 .5(或 .05)总向一个方向舍入,加上或减去一个很小的因子。

对一半值舍去对另一半值进一的背后原因是避免传统的银行问题,即如果总是舍去则银行从顾客那里多拿了钱,如果总是进一则银行最终会损失了钱。
对此平均舍入则在统计上达到了平衡。
 
三、sprintf函数

最后一种是使用sprintf函数,请参考文章:有关php中sprintf()函数的用法分析中的介绍。

总结:
本文为大家介绍了三种方法实现php保留两位小数的实例、每个方法都有它的不同,可以根据自己的需要来选择适合的一种!

相关推荐:

PHP保留两位小数并且四舍五入及不四舍五入的方法

php 如何用去尾法保留两位小数

JS和php保留两位小数例子 四舍五入使用函数toFixed()

Atas ialah kandungan terperinci php实现保留两位小数的三种方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn