PHP 小数的计算方式太坑爹了吧?if(0.030 != (0.530-0.500+0+0)){ $s = 0.530-0.500+0+0; $s = 0.03 - $s;}这居然不相等??相减后居然不是0 这PHP 是外星计算法吗? 分享到: ------解决方案-------------------- 引用: Quote: 引用: 请你补习一下有关浮点数的知识 $f = (0.530-0.500+0+0)*1000;$a = (0.030*1000); $ssa = doubleval($a) - doubleval($f);这样写都错...... 他是怎么计算的啊? 这个不光php这样,JAVA也有着现象的所以PHP要解决浮点数的办法有2个一个是if(0.030 != (0.530-0.500+0+0)){ $s = 0.53-0.5; $s = 0.03-"$s"; echo $s;}把变量的那个用双引号加起来就OK了还有的一个办法就是用round函数了