【问题标题】:Cant Grab data in API due to array由于数组,无法在 API 中抓取数据
【发布时间】:2018-01-01 22:27:30
【问题描述】:

所以这很简单,但我遇到了一些困难。

我正在从 API 获取数据并使用 PHP 将其回显到页面,它正在工作。

但是,当 API 数据包装在“数组”或“[]”中时,则不然。

API 1:(工作)

{
"data": 18, 
"data2": 20,  
}

API 2:(不工作)

[
{
"data": 18, 
"data2": 20,  
}
]

我的 PHP 代码:

<?php
$url = "my correct url is here";
$json = json_decode(file_get_contents($url), true);
$dataprint = $json["data"];
echo $dataprint;
?>

为什么'[]'的简单更改会弄乱代码并且不允许我打印信息?

【问题讨论】:

  • 在设置$dataprint变量之前先添加一个条件来检查它是否是数组。如果是,则使用$dataprint = $json[0]["data"];
  • 谢谢@Erwin

标签: php html arrays json api


【解决方案1】:

方括号是数组“无”键的 JSON 表示法(在解码的 php 数组中,键是从 0 开始的数字,并且不要跳过任何数字)。调整代码中的一行即可访问数据(添加[0]):

$dataprint = $json[0]["data"];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-01
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2023-03-10
    • 2016-12-31
    相关资源
    最近更新 更多