当前位置:  开发笔记 > 编程语言 > 正文

PHP中的圆形表示科学记数法而不是全数字

如何解决《PHP中的圆形表示科学记数法而不是全数字》经验,为你挑选了2个好方法。

我正在尝试对包含echo round(1400000); 1400000 的变量进行回声.所以有人写道:这给出了1,4E + 6而不是全数.有人知道如何完全展示它吗?



1> Kennethvr..:

似乎圆是问题所在.我改变它,number_format()这就完成了工作.感谢Aron和Paul的答案.



2> Aron Rotteve..:

与您的问题相关,我也在PHP网站上看到了这个评论.

对于某些"特殊"浮点数,PHP从标准十进制表示法切换到指数表示法.您可以使用以下方法查看此类"特殊"值的部分列表:

for( $tmp = 0, $i = 0; $i < 100; $i++ ) 
{
    $tmp += 100000;
    echo round($tmp),"\n"; 
} 

因此,如果你添加两个浮点数,最后得到一个"特殊"值,例如1.2E + 6,然后将该值未经修改地放入更新查询中以将值存储在十进制列中,例如,您可能会得到一个失败的事务,因为数据库将"1.2E + 6"视为varchar数据,而不是小数.同样,如果将值放入xml,您可能会收到XSD验证错误.

我必须说实话:这是我在20多年的编码中用任何语言看到的最奇怪的事情之一,并且解决这个问题是一个巨大的痛苦.

似乎还没有一个"真正的"解决方案,但从保罗迪克森前面提到的错误报告中的评论来看,他的解决方案似乎有效.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有