简体   繁体   English

需要帮助使用PHP解析JSON解码后代

[英]Need help parsing JSON decoded grandchildren with PHP

foreach($response_2['items'] as $item) {
$item['track']['name'] = (array)$item['track']['name'];
foreach($item['track']['name'] as $key => $value) {
    echo $value . "<br />";
}
$item['track']['artists']['name'] = (array)$item['track']['artists']['name'];
foreach($item['track']['artists']['name'] as $key => $value) {
    echo $value . "<br />";
} 
$item['track']['duration_ms'] = (array)$item['track']['duration_ms'];
foreach($item['track']['duration_ms'] as $key => $value) {
    echo $value . "<br />";
    } 
}

...to parse this response: http://pastebin.com/uxBF3Kxe# (after I've decoded it). ...以解析此响应: http : //pastebin.com/uxBF3Kxe# (在我解码后)。

All the values for ['track']['name'] and ['track']['duration_ms'] are echoed correctly, but nothing is echoed for ['track']['artists']['name'] . 正确回显了['track']['name']['track']['duration_ms']所有值,但没有回显['track']['artists']['name']

What am I doing wrong here? 我在这里做错了什么?

Thanks! 谢谢!

['track']['artists'] is array :) ['track']['artists']是数组:)

Try this ;) 尝试这个 ;)

foreach($item['track']['artists'] as $key => $value) {
    echo $value['name'] . "<br />";
}

Btw... This is better solution ;) 顺便说一句...这是更好的解决方案;)

$response_2 = json_decode($json, true);

foreach($response_2['items'] as $item) {
    echo $item['track']['name'] . "<br />";

    foreach($item['track']['artists'] as $key => $value) {
        echo $value['name'] . "<br />";
    }

    echo $item['track']['duration_ms'] . "<br />";
}

/ ** Added separator * / / **添加了分隔符* /

$response_2 = json_decode($json, true);

foreach($response_2['items'] as $item) {
    echo $item['track']['name'] . "<br />";

    echo implode(',', array_map(
            function ($value) {
                return $value['name'];
            },
            $item['track']['artists']
        )
    );

    echo "<br />";

    echo $item['track']['duration_ms'] . "<br />";
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM