欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP下的浮點運算不準(zhǔn)的解決方法

 更新時間:2016年10月27日 10:47:28   投稿:jingxian  
下面小編就為大家?guī)硪黄狿HP下的浮點運算不準(zhǔn)的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

最近在做一個?的相加減問題是,出現(xiàn)了浮點運算不準(zhǔn)的情況,看來都說解釋型語言對于浮點運算都會有問題的說法是真的。

首先看一段代碼:

<?php
$a = 0.1;
$b = 0.7;
var_dump(($a + $b) == 0.8);

打印出來的值居然為 boolean false

這是為啥?PHP手冊對于浮點數(shù)有以下警告信息:

Warning

浮點數(shù)精度

顯然簡單的十進制分?jǐn)?shù)如同 0.1 或 0.7 不能在不丟失一點點精度的情況下轉(zhuǎn)換為內(nèi)部二進制的格式。這就會造成混亂的結(jié)果:例如,floor((0.1+0.7)*10) 通常會返回 7 而不是預(yù)期中的 8,因為該結(jié)果內(nèi)部的表示其實是類似 7.9999999999...。

這和一個事實有關(guān),那就是不可能精確的用有限位數(shù)表達(dá)某些十進制分?jǐn)?shù)。例如,十進制的 1/3 變成了 0.3333333. . .。

所以永遠(yuǎn)不要相信浮點數(shù)結(jié)果精確到了最后一位,也永遠(yuǎn)不要比較兩個浮點數(shù)是否相等。如果確實需要更高的精度,應(yīng)該使用任意精度數(shù)學(xué)函數(shù)或者 gmp 函數(shù)

那么上面的算式我們應(yīng)該改寫為<?php$a = 0.1;$b = 0.7;var_dump(bcadd($a,$b,2) == 0.8);這樣就能解決浮點數(shù)的計算問題了

以上就是小編為大家?guī)淼腜HP下的浮點運算不準(zhǔn)的解決方法全部內(nèi)容了,希望大家多多支持腳本之家~

相關(guān)文章

  • PHP開發(fā)框架Laravel數(shù)據(jù)庫操作方法總結(jié)

    PHP開發(fā)框架Laravel數(shù)據(jù)庫操作方法總結(jié)

    這篇文章主要介紹了PHP開發(fā)框架Laravel數(shù)據(jù)庫操作方法總結(jié),包含Select查詢、Insert語句、update語句、Delete語句、事務(wù)等,需要的朋友可以參考下
    2014-09-09
  • laravel框架路由分組,中間件,命名空間,子域名,路由前綴實例分析

    laravel框架路由分組,中間件,命名空間,子域名,路由前綴實例分析

    這篇文章主要介紹了laravel框架路由分組,中間件,命名空間,子域名,路由前綴,結(jié)合實例形式分析了laravel框架路由分組,中間件,命名空間,子域名,路由前綴相關(guān)概念、原理與基本使用方法,需要的朋友可以參考下
    2020-02-02
  • laravel框架如何設(shè)置公共頭和公共尾

    laravel框架如何設(shè)置公共頭和公共尾

    今天小編就為大家分享一篇laravel框架如何設(shè)置公共頭和公共尾,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • PHP中使用GD庫創(chuàng)建圓形餅圖的例子

    PHP中使用GD庫創(chuàng)建圓形餅圖的例子

    這篇文章主要介紹了PHP中使用GD庫創(chuàng)建圓形餅圖的例子,本文給出了的代碼例子實現(xiàn)了一個扇形統(tǒng)計圖,需要的朋友可以參考下
    2014-11-11
  • php數(shù)組去重實例及分析

    php數(shù)組去重實例及分析

    這篇文章主要是介紹了php數(shù)組去重實例及分析。需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • Thinkphp通過一個入口文件如何區(qū)分移動端和PC端

    Thinkphp通過一個入口文件如何區(qū)分移動端和PC端

    這篇文章主要介紹了Thinkphp通過一個入口文件區(qū)分移動端和PC端的方法,需要的的朋友參考下吧
    2017-04-04
  • php中引用符號(&)的使用詳細(xì)介紹

    php中引用符號(&)的使用詳細(xì)介紹

    php的引用就是在變量或者函數(shù)、對象等前面加上&符號,在PHP 中引用的意思是:不同的名字訪問同一個變量內(nèi)容,下面介紹如何使用PHP的引用,需要的朋友可以參考下
    2016-12-12
  • 最新評論