JSON数组进入php变量

时间:2015-06-17 00:52:25

标签: php arrays json

ARRAY: https://api.twitch.tv/kraken/search/games?q=League%20of%20Legends&type=suggest

问候!我想在数组中获取一个值。我想要的是某个游戏的大盒子艺术。那我该怎么做?这是我的尝试,但我收到了这些错误。

  

注意:尝试在第4行的/???/test.php中获取非对象的属性

     

注意:尝试在第4行的/???/test.php中获取非对象的属性

     

注意:尝试在第4行的/???/test.php中获取非对象的属性

<?php
$game = urlencode($_GET['game']); // This is "League of Legends" in the URL
$json_array = json_decode(file_get_contents('https://api.twitch.tv/kraken/search/games?q={$game}&type=suggest'), true);
echo "IMG: ". $json_array->games[0]->box->large; // line 4

2 个答案:

答案 0 :(得分:1)

您应首先获取您的内容。你以前没有得到过内容。下面的行正确返回$json_array

$json_array=json_decode(file_get_contents('https://api.twitch.tv/kraken/search/games?q='.$game.'&type=suggest'), true);

然后编辑你的第二行,如下所示

echo "IMG: ". $json_array['games'][0]['box']['large'];

所以你的最终和工作代码如下:

$game = urlencode($_GET['game']); // This is "League of Legends" in the URL
$json_array = json_decode(file_get_contents('https://api.twitch.tv/kraken/search/games?q='.$game.'&type=suggest'), true);

echo "IMG: ". $json_array['games'][0]['box']['large'];

绝对有效,我试过了

IMG: http://static-cdn.jtvnw.net/ttv-boxart/League%20of%20Legends-272x380.jpg

作为输出

答案 1 :(得分:0)

此错误只是说$ json_array是一个数组而不是一个对象。您必须使用 - &gt;访问object元素和[]的数组元素。 如果$ json_array是数组,那么你必须使用

访问它的元素
$json_array['games']

如果$ json_array是对象,那么你必须使用

访问它的元素
  $json_array->games