php bcmath 使用情况,PHP 浮点数的一些坑=>使用BCMath

日常在php使用中,经常有保留2位小数等各类需求,容易触发浮点数的坑。foreach ([11.7999, 12.8, 8.99999, 6.534, 6.501, 6, 13.4, 19.1111, 7.53, 9.0999, 5.08, 5.02, 8.2] as $value) {

echo $value . '->';

echo floor($value*100)/100;

echo PHP_EOL;

}

/**

11.7999->11.79

12.8->12.8

8.99999->8.99

6.534->6.53

6.501->6.5

6->6

13.4->13.4

19.1111->19.11

7.53->7.53

9.0999->9.09

5.08->5.08

5.02->5.01

8.2->8.19

**/

所以还是使用BCMath 扩展系列函数来进行计算foreach ([11.7999, 12.8, 8.99999, 6.534, 6.501, 6, 13.4, 19.1111, 7.53, 9.0999, 5.08, 5.02, 8.2] as $value) {

echo $value . '->';

echo floatval(bcmul($value, 1, 2));

echo PHP_EOL;

}

/**

11.7999->11.79

12.8->12.8

8.99999->8.99

6.534->6.53

6.501->6.5

6->6

13.4->13.4

19.1111->19.11

7.53->7.53

9.0999->9.09

5.08->5.08

5.02->5.02

8.2->8.2

**/

赞助一杯咖啡☕️

本文由 widdy 创作,采用 知识共享署名4.0 国际许可协议进行许可

本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名

最后编辑时间为: Dec 10, 2020 at 09:22 am

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值