ホームページ  >  記事  >  バックエンド開発  >  php乘法有bug?解决办法

php乘法有bug?解决办法

WBOY
WBOYオリジナル
2016-06-13 10:18:041045ブラウズ

php乘法有bug?
85112854 * 4294967296 + 384440042 
计算结果用sprintf("%.0f"输出是365556924783662848,而用计算器计算得到的结果是365556924783662826
被这个问题搞的头大死了。。
有谁知道是什么原因吗?

------解决方案--------------------
这样运算,或用gmp函数

PHP code
echo    bcadd(bcmul(85112854, 4294967296), 384440042);<br><font color="#e78608">------解决方案--------------------</font><br>echo bcadd(bcmul('85112854', '4294967296', 0), '384440042', 0);//365556924783662826<br><div class="clear">
                 
              
              
        
            </div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。