Хорошо, я создал XML-документ с названием и названием песен и исполнителей в этом документе и соответствующей обложке. Теперь ссылка на мой XML-файл: http://inlivefm.96.lt/nw.xml .
У меня также есть другой XML-документ, который дает мне имя и название исполнителя, которые на данный момент равны (ADELE — HELLO). Теперь ссылка на мой XML-файл: 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]. '" />';
Других решений пока нет …