He creado un script que extrae datos de un rss y los almacena en la base de datos. Funciona bien para extraer cualquier etiqueta como "title","description",etc pero no extrae <enclosure> . supongo que por que dentor de esta etiqueta rss hay varios datos
os dejo el script que uso para ver si me podeis ayudar.
Código PHP:
<?php
include('db.php');
$rss_tags = array(
'title',
'link',
'smallThumbnail',
'thumbnail_src',
);
$rss_item_tag = 'item';
$rss_url = 'http://urldelrss';
$rssfeed = rss_to_array($rss_item_tag,$rss_tags,$rss_url);
echo '<pre>';
print_r($rssfeed);
function rss_to_array($tag, $array, $url) {
$doc = new DOMdocument();
$doc->load($url);
$rss_array = array();
$items = array();
foreach($doc->getElementsByTagName($tag) AS $node) {
foreach($array AS $key => $value) {
$items[$value] = $node->getElementsByTagName($value)->item(0)->nodeValue;
}
array_push($rss_array, $items);
$des = $items['smallThumbnail'];
$title = $items['title'];
$link = $items['link'];
$pubdate = $items['thumbnail_src'];
$query1 = mysql_query( // aqui codigo para ver si ya esta insertado o no
$count=mysql_num_rows($query1);
if($count==0)
{
//aqui va el codio para insertar un nuevo registro en la bd
}
else
{
}
}
return $rss_array;
}
?>