繁体   English   中英

Last.fm从track.getinfo获取图像

[英]Last.fm getting image from track.getinfo

我是PHP编程的新手,并且一直在Google搜索并尝试了几个小时才能使其正常工作。 但是,我很不幸。 希望有人可以帮助我:-)

我正在尝试使用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 '">';
?>

我已经尝试了所有方法,但无法解决。 有人想帮我吗?

您可以使用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));

暂无
暂无

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

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