好,我有LastFM API的代码
<?php
$xml = simplexml_load_file("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=ARIANA GRANDE&api_key=b25b959554ed76058ac220b7b2e0a026");
$largeImage = $xml->xpath('/lfm/artist/image[@size="mega"]')[0];
echo '<img src="'.$largeImage.'" />';
?>
它似乎使用了Ariana Grande的图像一个php页面。
现在我的XML文件的链接是:http://radiojoven.6te.net/playlist.xml
好吧,我想要做的是在“simplexml_load_file”(在php代码中)的链接中将“ARIANA GRANDE”(艺术家的名字)改为我的XML文件提供的信息。我尝试制作这样的代码,但无济于事。
<?php
$xml = simplexml_load_file('http://radiojoven.6te.net/playlist.xml');
$artist = urlencode($xml->Event->Song->Artist['name'];);
$url = simplexml_load_file("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist='.$artist.'&api_key=50ac27433c63f7298064f434f4ef6d15);
$xml2 = @simplexml_load_file($url);
$largeImage = $xml2->xpath('/lfm/artist/image[@size="mega"]')[0];
echo '<img src="'.$largeImage.'" />';
?>
你能帮我这么做吗?
提前谢谢大家。
答案 0 :(得分:1)
我认为您的代码中存在一些错误。
在此行中['name'];
后删除分号:
$artist = urlencode($xml->Event->Song->Artist['name'];);
在api_key=50ac27433c63f7298064f434f4ef6d15
之后缺少双引号,我认为'.$artist.'
在此行中应为$artist
:
$url = simplexml_load_file("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist='.$artist.'&api_key=50ac27433c63f7298064f434f4ef6d15);
我认为你不需要这一行:
$xml2 = @simplexml_load_file($url);
然后在此行中将$xml2
更改为$url
:
$largeImage = $xml2->xpath('/lfm/artist/image[@size="mega"]')[0];
所以你的代码会变成这样:
<?php
$xml = simplexml_load_file('http://radiojoven.6te.net/playlist.xml');
$artist = urlencode($xml->Event->Song->Artist['name']);
$url = simplexml_load_file("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=$artist&api_key=50ac27433c63f7298064f434f4ef6d15");
$largeImage = $url->xpath('/lfm/artist/image[@size="mega"]')[0];
echo '<img src="'.$largeImage.'" />';
?>