尝试回显数组时出错

时间:2015-11-13 13:33:56

标签: php arrays json

我遇到了问题。我在this json file找不到合适的数组。当我尝试这个:

<?php
$jsonurl = "http://steamcommunity.com/profiles/76561198132044757/inventory/json/304930/2";
$json = file_get_contents($jsonurl);

$arJson = json_decode( $json, true );
echo $arJson[0]
?>

它说:

  

注意:未定义的偏移量:0

或者如果我试试这个:

echo $arJson["rgInventory"]

它说:

  

注意:数组转换为字符串

我的json文件中的数组在哪里以及如何添加它们?

提前谢谢你,抱歉我的英语不好;)

纳斯

3 个答案:

答案 0 :(得分:3)

  

注意:未定义的偏移量:0

你得到这个错误,因为你的数组是一个关联数组,这意味着没有索引0.有关更多信息,请查看docs

  

注意:数组转换为字符串

您收到此错误,因为echo只能输出字符串而不是数组

要查看数组中的内容,您可以使用var_dump()

<?php
$jsonurl = "http://steamcommunity.com/profiles/76561198132044757/inventory/json/304930/2";
$json = file_get_contents($jsonurl);

$arJson = json_decode( $json, true );
echo "<pre>";
var_dump( $arJson );

$ arJson [&#34; rgInventory&#34;]也是一个数组,因此您可以看到以下值:

var_dump( $arJson["rgInventory"] );

答案 1 :(得分:2)

1)首先,您应该阅读Steam API文档以了解即将到来的数据的结构 https://steamcommunity.com/dev

2)使用print_r和var_dump函数来查看变量的结构。
例如<pre> <? print_r($arJson) ?>

答案 2 :(得分:2)

您必须使用print_r才能打印数组。 使用

查看结果
echo '<pre>';print_r($arJson);