2014-04-24 32 views
0

我有點在PHP編程新手,並且圖像已經Googleing並試圖幾個小時我們得到這個工作。但是,我運氣不好。希望有人能幫助我:-)Last.fm正從track.getinfo

我想要做的是使用Last.FM API來獲取單個軌道的封面圖像。它在XML中找到圖像標籤時起作用,但只要不在Last.FM的XML文件中,PHP腳本就會輸出很多錯誤,並仍嘗試在文檔中插入損壞的圖像。我想要做的是如果腳本在XML中找到圖像標籤並顯示圖像,並且如果它找不到它,則顯示通用圖像。

這是我的代碼到目前爲止(這裏的XML文件的URL與圖像工作);

<?php 
$img = simplexml_load_file('http://ws.audioscrobbler.com/2.0/?method=track.getInfo&api_key=f5f149ffcdf2e0db0888f6c477c4abc1&artist=cher&track=believe'); 
echo '<img src="'; 
echo $img->track[0]->album[0]->image[3]; 
echo '">'; 
?> 

我試了一切,但我無法弄清楚。任何人都想幫助我呢?

回答

1

您可以使用xpath查詢該圖像,如果沒有結果,請提供默認的src值。

另外,你應該編碼的HTML創建:

list($src) = $img->xpath('/*/track[1]/album[1]/image[4]')? 
      :['http://example.com/path/to/default.png']; 

printf('<img src="%s">', htmlspecialchars($src));