【问题标题】:why I have scientific notation in php concatenation为什么我在 php 连接中有科学记数法
【发布时间】:2016-01-26 07:29:50
【问题描述】:

我必须调用一个 API Restful 的端点,其中最后一个元素是资源 ID

http://midomain.com/resurces/:resourceID

resourceId 是 666769510661446146 但是当我将此数字连接到 url 时

$url = "http://midomain.com/resources/" . $myId;      

php 返回http://midomain.com/resources/6.6676951066145E+17

我尝试将数字转换为双倍并使用 sprintf 但总是相同

谢谢!

【问题讨论】:

  • 我不认为$resourceId 是你认为的那样。它是从哪里来的,在此之前你用它做了什么?
  • 因为32位有符号整数的值太大,所以必须用float来表示。无论您从何处获取此值,请确保将其视为字符串

标签: php rest integer-overflow


【解决方案1】:

您是否尝试过使用number_format

$url = "http://midomain.com/resources/" . number_format($myId,0,"","");

这样您就可以避免科学表述。查看official documentation了解更多信息

你可以看到example here

【讨论】:

    猜你喜欢
    • 2017-10-16
    • 1970-01-01
    • 2023-03-13
    • 2022-01-05
    • 1970-01-01
    • 2015-04-08
    • 2014-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多