XML转JSON后PHP无法获取count值的问题求助
解决PHP获取JSON嵌套数据失败的问题
嗨,我来帮你搞定这个问题~你之所以获取不到count的值,是因为没注意到JSON数据的嵌套层级,你的代码直接访问了顶层对象的count属性,但实际上这个值藏在两层嵌套里面呢!
错误原因分析
你的JSON结构是这样的:
{ "result": { "stats": { "count":"0" } } }
count属性属于stats对象,而stats又属于result对象,所以不能直接用$yummy->count来访问。
正确的获取方式
方式一:对象式访问(默认方式)
直接按照嵌套层级依次访问即可:
$json = '{ "result": { "stats": { "count":"0" } } }'; $yummy = json_decode($json); echo $yummy->result->stats->count; // 输出 0
方式二:关联数组式访问
如果把json_decode的第二个参数设为true,会将JSON转换为关联数组,此时用数组下标访问:
$json = '{ "result": { "stats": { "count":"0" } } }'; $yummy = json_decode($json, true); echo $yummy['result']['stats']['count']; // 输出 0
这样就能成功获取到count的值啦~
内容的提问来源于stack exchange,提问作者Luca Stefanazzi
相关产品推荐
相关产品推荐

