首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在php中使用Kimono api数据

在php中使用Kimono api数据
EN

Stack Overflow用户
提问于 2014-09-02 03:10:37
回答 2查看 373关注 0票数 0

我是api的新手,所以请容忍我。我尝试了一个小时的谷歌搜索,但我无法从结果中了解任何东西。

目前,我有一个带有给定示例数据的和服API:

代码语言:javascript
复制
{
  "name": "Summoners-Details",
  "count": 31,
  "frequency": "On demand",
  "version": 7,
  "newdata": false,
  "lastrunstatus": "success",
  "thisversionrun": "Tue Sep 02 2014 02:34:07 GMT+0000 (UTC)",
  "lastsuccess": "Tue Sep 02 2014 02:34:07 GMT+0000 (UTC)",
  "stats": {
    "retriedUrls": [],
    "failedUrls": [],
    "successful": 1,
    "rows": 31,
    "retried": 0,
    "failed": 0,
    "duration": 1894
  },
  "results": {
    "rank": [
      {
        "division": "Wukong's Lancers Silver-tier II"
      }
    ]
  }
}

下面是我试图用来获取除法数据的php代码,但是我什么也没有得到!:

代码语言:javascript
复制
<?php
$request = "https://www.kimonolabs.com/api/c6qj1oc?apikey=xxxxxxxxxxxxxxxxxx";
$response = file_get_contents($request);
$results = json_decode($response, TRUE);

$division = $results->{'results'}->{'rank'}->{'division'};
echo $division;
?>

我在这里做错什么了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-02 03:45:02

tl;dr

  1. json_decode()中删除"true“参数
  2. [0]后面添加{'rank'}

你的问题在于你如何使用json_decode().第二个参数(true)告诉它返回一个关联数组,而不是一个对象。

其次,JSON的rank部分是一个数组,因此您需要使用零键来访问它的值。

数组访问将如下所示:

代码语言:javascript
复制
$division = $results['results']['rank'][0]['division'];

否则,删除真正的参数,它将默认为一个对象,您将访问该变量,如下所示:

代码语言:javascript
复制
$division = $results->results->rank[0]->division;

这里有一些关于json_decode()的更多信息。

请记住,从技术上讲,您已经得到的$division定义使用对象而不是数组可以很好地工作(添加零数组键),我只删除了{'xxx'}括号,因为它们是不必要的。

票数 1
EN

Stack Overflow用户

发布于 2014-09-02 04:21:03

多亏了scrowler的解释,我才能把我的数据显示出来。以下是工作代码:

代码语言:javascript
复制
<?php
$request = "https://www.kimonolabs.com/api/c6qj1oc?apikey=xxxxxxxxxxxxxx";
$response = file_get_contents($request);
$results = json_decode($response, TRUE);

$division = $results['results']['rank'];

foreach($division as $key => $value)
{
    echo $value['division'];
}
?>

不太确定是否真的需要foreach循环,但是嘿,将来可能会有用:D

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25615293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档