我正在尝试对包含1400000的变量进行回显。
所以有写:echo round(1400000);
这给出了1,4E + 6而不是全数。
有人知道如何完全展示它吗?
答案 0 :(得分:10)
似乎圆是问题所在。
我用number_format()
更改了它,这就完成了工作。
感谢Aron和Paul的答案。
答案 1 :(得分:7)
与您的问题相关,我在PHP网站上也遇到了this comment。
PHP从标准小数开关 符号指数表示法 某些“特殊”花车。你可以看到 这种“特殊”的部分清单 这个值:
for( $tmp = 0, $i = 0; $i < 100; $i++ )
{
$tmp += 100000;
echo round($tmp),"\n";
}
所以,如果你添加两个浮点数,最后得到 一个“特殊”值,例如1.2E + 6,然后 将该值未经修改地放入 更新查询以将值存储在a中 十进制列,比方说,你很可能 得到一个失败的交易,因为 数据库将“1.2E + 6”视为varchar 数据,而不是小数。同样,你会的 如果,可能会收到XSD验证错误 你把值放入xml。
我必须诚实:这是其中之一 我见过的最奇怪的事情 超过20年的任何语言 编码,这是一个巨大的痛苦 解决。
似乎尚未有“真正的”解决方案,但从先前bug report Paul Dixon referered to的评论来看,他的解决方案似乎有效。
答案 2 :(得分:3)
可能与此bug report相关,因此您可以尝试
printf("%d", $myvar);