在 PHP 中打开 XML 个元素

Open XML elements in PHP

很好,我创建了一个 XML 文档,其中包含歌曲和艺术家的名称和标题,以及相应的封面。现在我的 XML 文件的 link 是:http://inlivefm.96.lt/nw.xml .

我还有另一个 XML 文件,它给出了我的名字和艺术家头衔,这相当于那一刻(ADELE - 你好)现在我的 XML 文件的 link 是: http://inlivefm.96.lt/NowOnAir.xml .

好吧,我想做的是用我创建的文件给我这首歌的封面,让我现在就给。我试着做了一个代码,但在PHP中没有成功,所以我来请求你的帮助获得成功。 在这里我留下我正在使用的代码来尝试得到我想要的东西。

<?php
$xml = simplexml_load_file('http://inlivefm.6te.net/agora.xml');
$artist = urlencode($xml->Event->Song->Artist['name']);
$track = urlencode($xml->Event->Song['title']);
$url = simplexml_load_file("http://inlivefm.96.lt/nw.xml");
$largeImage = $url->xpath('/ilm/$artist- $track/image[@size="cover"]')[0];
echo '<img src="'.$largeImage.'" />';     
?>

你能帮我做这个吗?

提前谢谢大家。

拍摄图像的正确 xpath 是

(/ilm/artist/image[@size="cover"])[count(/ilm/artist/name[.="ADELE-HELLO"]/preceding-sibling::name)+1]

因为你需要获取与艺术家姓名位置相同的图像。

在php代码中应该是这样的:

$XML = simplexml_load_file('http://inlivefm.6te.net/agora.xml');
$artist = $XML->Event->Song->Artist['name']; 
$track = $XML->Event->Song['title']; 

$URL = simplexml_load_file("http://inlivefm.96.lt/nw.xml"); 
$largeImage = $URL->xpath('(/ilm/artist/image[@size="cover"])[count(/ilm/artist/name[.="'. $artist .' - '. $track.'"]/preceding-sibling::name)+1]'); 
echo '<img src = "'. $largeImage[0]. '" />';