我正在尝试遍历Last.fm API的结果,但它无效。
function get_url($url){
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
$xml = get_url('http://ws.audioscrobbler.com/2.0/?method=album.search&album=kid%20a&api_key=b25b959554ed76058ac220b7b2e0a026');
$doc = new SimpleXMLElement($xml);
$albums = $doc->results->albummatches;
foreach($albums as $album){
echo $album->album->name;
}
这只是显示第一张专辑。如果我将foreach循环中的代码更改为echo $album->name;
,则它根本不显示任何内容。
我做错了什么?
答案 0 :(得分:1)
如何使用它:
$albums = $doc->results->albummatches;
foreach($albums->album as $album){
echo $album->name . '<br />';
}
这似乎得到了专辑名称列表。
要简化事情,而不是循环$doc->results->albummatches
,您必须循环$doc->results->albummatches->album
。
然后,在循环内,$album
对应当前的专辑;所以,你可以使用$album->name