You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP API开发:如何去除返回结果中变量值的引号?

解决PHP API返回结果中数值带引号的问题

你用str_replace去引号没用,核心原因是**$seeing[$i]、$transparency[$i]本身是字符串类型**——返回结果里的引号是JSON编码时自动给字符串加的,不是值本身带引号。要去掉这些引号,得把字符串转成数字类型,JSON序列化时就不会给数字加引号了。

另外先提一句:你原代码里的数组语法有错误,"seeing" => $seeing[$i]),这里多了个右括号,会导致语法报错,得先修正这个问题。

修正后的代码

for ($i = 0; $i < 48; $i += 1) {
    $hourly[$i] = array(
        "seeing" => (float)$seeing[$i],
        "transparency" => (float)$transparency[$i],
        "time" => $timeforapi[$i]
    );
}

关键说明

  • 用(float)强制把字符串转成浮点数字类型,如果你的值是整数,也可以用(int)或者intval()、floatval()函数。
  • 转成数字类型后,当你用json_encode()输出API结果时,这些值会以纯数字形式呈现,不再带引号。

修正后返回的JSON会变成:

"hourly": [
    {
        "seeing": 1.2,
        "transparency": 0.5,
        "time": 1672074000
    },
    ...
]

内容的提问来源于stack exchange,提问作者user15505180

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 13:10:37