Last.fm PHP kullanarak web üzerine beslemek Ayrıştırma

1 Cevap php

Benim web sitesi üzerine oynanan son 10 parça Last.fm besleme ayrıştırmak çalışıyorum.

Bu, ben bugüne kadar ne var


<?php

	$doc = new DOMDocument();
	$doc->load('http://ws.audioscrobbler.com/1.0/user/nathanjmassey/recenttracks.xml');
	$arrFeeds = array();
	foreach ($doc->getElementsByTagName('track') as $node) {
		$itemRSS = array ( 
			'artist' => $node->getElementsByTagName('artist')->item(0)->nodeValue,
			'name' => $node->getElementsByTagName('name')->item(0)->nodeValue,
			'url' => $node->getElementsByTagName('url')->item(0)->nodeValue,
			);
		array_push($arrFeeds, $itemRSS);
	}

?>


<?php 

foreach ($arrFeeds as $i => $values) {

    foreach ($values as $key => $value) {
		print "<p>$value\n</p>";  
    }

}

?>


Bu temelde, bana formatında besleme tüm 10 parça verir

Linkin Park

In Between

"> Http://www.last.fm/music/Linkin+Park//In+Between Arasında / In +

Ama ben, gibi bağlantıların listesinde sonuçlarını biçimlendirmek gerekir

<a href="$url">$artist - $track</a>

Nasıl benim komut dosyası bunu başarmak için uzanacak?

1 Cevap

Çıkış için, bu kullanın:

<?
foreach ($arrFeeds as $i => $values)
{
    print "<a href='" . $values['url'] . "'>" . $values['artist'] . " - " . $values['name'] . "</a>";
}
?>

UPDATE: How to limit # of parsed items

(Responding to the comment via edit so I can use the code display tags.)

Ben şu anda işteyim, ama öyle gibi ilk ayrıştırma kod bir şey değiştirmeyi denemek istiyorum:

array_push($arrFeeds, $itemRSS); // existing line
if (count($arrFeeds) >= 5) { break; } // add this line