PHP |访问对象中的对象

时间:2015-04-02 09:29:27

标签: php json api object

您好我很高兴在PHP中使用API​​。这是我的第一次尝试。到目前为止,我已经以JSON格式返回数据。我有json_decoded()它,而var_dump()正在返回我只能作为对象内的对象。我的PHP缺乏经验可能会在这里显示。

以下是我正在使用的成功检索数据的代码。

    $url = 'https://euw.api.pvp.net/api/lol/euw/v1.4/summoner/by-name/elderofaegis?api_key=RemovedForSO';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch, CURLOPT_URL, $url);
    $output = curl_exec($ch);
    curl_close($ch);
    $result = json_decode($output);
    var_dump($result);

以下是var_dump()返回的内容

object(stdClass)[1]
  public 'elderofaegis' => 
     object(stdClass)[2]
      public 'id' => int 38186794
      public 'name' => string 'ElderOfAegis' (length=12)
      public 'profileIconId' => int 785
      public 'summonerLevel' => int 30
      public 'revisionDate' => float 1427933098000

有谁知道如何通过名称访问该对象。通过这个我的意思是引号中包含的部分,例如,如果我想回显我想要的东西(Pseudo Below)的名称。

echo $result->object['name'];

上面的例子是Pseudo因为我无法弄明白。 对于任何想知道这是英雄联盟API

的人

感谢。

2 个答案:

答案 0 :(得分:1)

尝试

$result->elderofaegis->name;

答案 1 :(得分:0)

你可以添加true作为json_decode($json, true)的第二个参数,这会将整个对象转换为一个数组,这将使它更容易被人参考

json-decode.php