将float number转换为int或string

时间:2015-05-11 17:23:16

标签: php string floating-point int

我正在检索一个Facebook ID,我正在浮动:

float(1.1262850591603E+16)

如何将其转换为int(或字符串)以在此处使用?

  

http://graph.facebook.com/ 1.1262850591603E + 16 /图片

我尝试了intval函数,但它返回了错误的结果:

<?php
intval(1.1262850591603E+16); // returns -1062487752
?>

谢谢!

2 个答案:

答案 0 :(得分:1)

我发现了问题和阅读评论的解决方案:)

问题:我是通过curl从网络服务中检索数据,并对结果进行了json_encoding。此时,json_encode将bigints转换为浮点数。

我解决了它将JSON_BIGINT_AS_STRING参数传递给json_encode。

它在PHP文档中有记录: http://php.net/manual/es/function.json-decode.php

答案 1 :(得分:0)

您可以使用strval - http://php.net/manual/en/function.strval.php

将其转换为字符串
strval($your_float_variable);