2025-05-31 07:05:51

大家好,今天小编关注到一个比较有意思的话题,就是关于php保留两位小数的问题,于是小编就整理了1个相关介绍php保留两位小数的解答,让我们一起看看吧。

出现小数精度丢失的原因?

两个例子:

php保留两位小数,php保留两位小数的函数

在js中:0.1+0.2 != 0.3 而是 等于0.300000000004 //这跟js默认采用双精度存储小数有关系

在php中9.45*100%100 != 45而是等于44 //这跟php取余运算时是先取整再取余有关系

以上两种情况的根本原因应该是小数在计算机存储时精度丢失导致的.

因为有些小数在计算机使用二进制方式表示时无法准确的表示出来,类似于十进制中的1/3一样,无理数,无限循环.

可是计算机存储小数的类型不管是float还是double都是有位数限制的,所以他们存储的只是一个近似值,这就导致了精度丢失.

因为经度丢失了,所以有些时候运算结果就会跟我们预想的不太一样了.

到此,以上就是小编对于php保留两位小数的问题就介绍到这了,希望介绍关于php保留两位小数的1点解答对大家有用。

上一篇:php一句话木马,php一句话木马格式

下一篇:php是前端还是后端,PHP是前端还是后端开发的

相关阅读