我需要帮助.我这样做:
round($myvar,2);
Run Code Online (Sandbox Code Playgroud)
这是我得到的数字:9.779999999999999€
使用其他变量它可以正常工作,任何想法如何解决这个问题?
Pab*_*ara 12
我这样做了:
<?php echo round(9.7752,2);?>
Run Code Online (Sandbox Code Playgroud)
我得到了:9.779999999999999
我相信它是php.ini中的东西,因为@MarkBaker说..但是,我修复了它:
<?php echo number_format($myvar,2);
Run Code Online (Sandbox Code Playgroud)
我得到了我想要的东西.谢谢大家的帮助!
小智 10
只需在 round 函数之前加入空字符串即可
$val = "" . round(9.597466245, 2);
Run Code Online (Sandbox Code Playgroud)
小智 6
我遇到的问题是 round(18.203,2) = 18.2 ,然后 json_encode(...) = 18.199999999 。所以我发现解决方案是 json_encode(strval(round(18.203,2))) = 18.2 它有效