将此数字转换为人类可读形式?

时间:2012-07-24 13:30:24

标签: php numbers

我有一个从XLS文件移植的数据库。我的号码是这种形式

3.41002E+13  

但可读形式应为:34100224263318

如何将第一个表单转换为第二个表单?

4 个答案:

答案 0 :(得分:4)

使用number_format()

  

string number_format (float $ number,int $ decimals = 0,string $ dec_point ='。',string $ thousands_sep =',')

默认情况下,数千个由,分隔,这就是你需要传递所有四个参数的原因:

number_format(3.41002E+13, 0, ".", "");
34100200000000

正如你所看到的,你还有另外一个问题:你失去了精确度 - 至少是这样:它从来就不存在。

答案 1 :(得分:3)

您需要使用number_format,请查看here

答案 2 :(得分:1)

3.41002E + 13 == 3.41002 * 10 ^ 13 == 3.41002 * 100000000000000

它只是一种浮动类型。如果要实现此目的,则需要使用number_format();

number_format(3.41002E+13) == 34100224263318

如果使用

,phant0m会发表评论
number_format(1.11E-2) == 0,00111

但是对于整数,如果你想要一个点,只需使用

即可
number_format(1.11E-2, 5, '.', '') == 0.00111

答案 3 :(得分:1)

您永远无法获得确切的数字(例如34100224263318) “Ex”代表10 ^ x,用于具有大量数字的数字作为实际数字的近似值。 number_format是您可以用来获得标准人类可读数字版本的近似值(Ex也是可读的,但无论如何)。