Pregunta

Estoy tratando de analizar la alimentación Last.fm de mis últimos 10 pistas jugado en mi página web.

Esto es lo que tengo hasta ahora,


<?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>";  
    }

}

?>

Esto básicamente me da todas las 10 pistas en la alimentación en el formato,

  

Linkin Park

     

En Entre

     

http://www.last.fm/music/Linkin + Parque / _ / A + Entre

Pero necesito para dar formato a los resultados de la lista de enlaces tales como,

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

¿Cómo puedo extender mi script para lograr esto?

¿Fue útil?

Solución

Para su salida, utilice la siguiente:

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

ACTUALIZACIÓN: ¿Cómo limitar # de artículos analizados

(respuesta a la observación a través de edición para que pueda utilizar las etiquetas de visualización de código.)

Estoy en el trabajo en el momento, pero que iba a tratar de cambiar su código de análisis inicial algo así:

array_push($arrFeeds, $itemRSS); // existing line
if (count($arrFeeds) >= 5) { break; } // add this line
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top