0

这是上一个 fm 的 xml 响应:

<lfm status="ok">
   <artist>
      <name>Adele</name>
      <mbid>1de93a63-3a9f-443a-ba8a-a43b5fe0121e</mbid>
      <url>http://www.last.fm/music/Adele</url>
      <image size="small">http://userserve-ak.last.fm/serve/34/71796928.png</image>
      <image size="medium">http://userserve-ak.last.fm/serve/64/71796928.png</image>
      <image size="large">http://userserve-ak.last.fm/serve/126/71796928.png</image>
      <image size="extralarge">http://userserve-ak.last.fm/serve/252/71796928.png</image>
      <image size="mega">http://userserve-ak.last.fm/serve/_/71796928/Adele+PNG.png</image>
      ...

我试图回显那个大图像,但它没有返回任何东西......

<?php
    $xml = simplexml_load_file("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=ARTISTNAME&api_key=b25b959554ed76058ac220b7b2e0a026");

    $largeimg = $xml->artist->image['large'];
    echo '<img src="'.$largeimg.'" />';     
?>

如果我只是把 $largeimg = $xml->artist->image; 它只是抓取第一个图像(小图像)。知道如何解决这个问题吗?

4

1 回答 1

1

使用PHP 的 children() 函数获取艺术家节点的子节点:

$artistTag= $xml->artist->children();
$largeImage = $artistTag[5]; // 5 is the index of the Large Image child
于 2012-10-24T10:29:29.413 回答