将JSON数组转换为php变量

将JSON数组转换为php变量,php,arrays,json,Php,Arrays,Json,数组: 你好!我试图在数组中获取一个值。我想要的是某种游戏的大盒子艺术。那我该怎么做呢?这是我的尝试,但我得到了这些错误 注意:尝试在第4行的/???/test.php中获取非对象的属性 注意:尝试在第4行的/???/test.php中获取非对象的属性 注意:尝试在第4行的/???/test.php中获取非对象的属性 您应该首先获取您的内容。你以前不满足。下一行正确返回$json_数组 $json_array=json_decode(file_get_contents('https://api

数组:

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

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

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

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


您应该首先获取您的内容。你以前不满足。下一行正确返回
$json_数组

$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

作为输出

此错误只是说$json_数组是一个数组而不是一个对象。必须使用->访问对象元素,使用[]访问数组元素。 如果$json_数组是数组,那么必须使用

$json_array['games']
  $json_array->games
如果$json_数组是对象,那么必须使用

$json_array['games']
  $json_array->games

第4行的代码是什么?是的,因为PHP声明问题在第4行,而您只显示了3行,我们必须询问您是否可以在文件中显示第4行:)我还建议您进行清理,并确保$_GET['game']的值是正确的。根据变量所需的内容,您可以通过多种不同的方式来实现。。。例如,它是一个字符串验证它是否是一个字符串,等等。您已将
true
作为第二个参数传递给
json\u decode
,这将强制它创建关联数组而不是对象。您需要类似于
$json_数组['games'][0]['box']['large']
。或者干脆不通过第二个arg@JosephCrawford
$\u GET
值始终是字符串。我还想说,通过
urlencode()
传递它是安全的,因为您应该在
文件获取内容
函数中使用双引号,否则将不会替换
$game
变量。