Php JSON解码-返回未定义的索引
我正试图更熟悉JSON解码,所以我得到了以下信息:Php JSON解码-返回未定义的索引,php,json,Php,Json,我正试图更熟悉JSON解码,所以我得到了以下信息: $json = '{"id":[{"tier": "SILVER"}]}'; $array = json_decode($json, true); var_dump($array["id"]['tier']); 我试图获取“层”,但它导致以下错误:注意:未定义索引:层 我试过一些方法,比如var_dump($array['tier']),var_dump($array[0]['tier'])但似乎没有任何效果,我找不到关于这方面的很多信息
$json = '{"id":[{"tier": "SILVER"}]}';
$array = json_decode($json, true);
var_dump($array["id"]['tier']);
我试图获取“层”,但它导致以下错误:注意:未定义索引:层
我试过一些方法,比如var_dump($array['tier'])代码>,var_dump($array[0]['tier'])
但似乎没有任何效果,我找不到关于这方面的很多信息
在通知之后
也返回NULL
。感谢您的帮助 结果数组中的id
键将包含一个数组的数字索引数组。
要访问,需要指定该数组中的键,在本例中为0
,因为只有一个元素
var_dump($array["id"][0]['tier']);
如果您选择解码到对象的位置,而不是强制执行关联数组(通过在json_decode
调用中省略true
),您可能会发现语法更容易阅读:
$json = '{"id":[{"tier": "SILVER"}]}';
$obj = json_decode($json);
var_dump($obj->id[0]->tier);
您需要访问数组[“id”]
上的第一项[0]
试试这个:
$json = '{"id":[{"tier": "SILVER"}]}';
$array = json_decode($json, true);
var_dump($array["id"][0]['tier']);
//string(6) "SILVER"
谢谢你的解释!这完全回答了我的问题。当我可以的时候,我会记下你的答案@没问题,很高兴我能帮忙