Parser le flux rss de dotclear

Petit nouveau ! | 1 Messages

02 juil. 2008, 15:10

Bonjour !

Je viens vers vous parce que je ne trouve pas de solution..

J'essaye de parser le fil rss des blogs dotclear en utilisant ce code :

Code : Tout sélectionner

<?
function lit_xml($fichier,$item,$champs) {
   if($chaine = @implode("",@file($fichier))) {
      $tmp = preg_split("/<\/?".$item.">/",$chaine);
      for($i=0;$i<sizeof($tmp)-1;$i+=1)
         foreach($champs as $champ) {
            $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
            $tmp3[$i-1][] = @$tmp2[1];
         }
      return $tmp3;
   }
}
 
$xml = lit_xml('http://www.url.com/blog/rss.php','item',array('title','link'));
 
foreach($xml as $row) {
  echo "<br /> titre : ";
  echo $row[0];
 
  echo "<br /> lien : ";
  echo $row[1];
  echo "<br />";
  }
 
?>


Les item des fils rss dotclear ont ce format :

Code : Tout sélectionner

<item rdf:about="URL">
  <title></title>
  <link></link>
</item>


Et en début de fichier un about :

Code : Tout sélectionner

<channel>
  <title></title>
  <link></link>
</channel>


Mon problème c'est qu'a cause de ce "title" et "link" dans le "about" du début de fichier mon code ne lit qu'à partir du deuxième post du blog et m'affiche en premier le "about".

Je ne trouve pas de solution alors j'aimerais pouvoir supprimer tout simplement les premières lignes de mon tableau $fichier mais je ne sais comment faire...

Merci de vous pencher sur mon problème !

ViPHP
ViPHP | 4674 Messages

17 juil. 2008, 23:48

Hey :),

Et bienvenu !
Je veux bien me pencher sur ton problème, mais toi, tu devrais te pencher sur SimpleXML … Ah mince, c'est le salon PHP 4 (obsolète) ici. Bien, regarde l'analyseur syntaxique de PHP 4 alors :).
Si tu ne veux pas t'embêter, il existe des classes qui te mâchent le travail, mais tu devrais penser à passer en PHP 5 si ce n'est pas encore le cas :). On rappelle que le support de PHP 4 s'arrêtera le 8 aout 2008 (08/08/08 facile à retenir).
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).