Bonjour a vous,

J'ai un petit problème avec une boucle foreach.
Je parse un flux rss via PHP et j'affiche le résultat via une boucle foreach. En lacal, sur wamp, ça marche très bien. En ligne, j'ai l'erreur suivante: Warning: Invalid argument supplied for foreach()

le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Lecture d'un fichier XML
function lit_rss($fichier,$champs) {
   // on lit le fichier
   if($chaine = @implode("",@file($fichier))) {
      // on explode sur <item>
      $tmp = preg_split("/<\/?"."item".">/",$chaine);
      // pour chaque <item>
      for($i=1;$i<sizeof($tmp)-1;$i+=2)
         // on lit les champs demand? <champ>
         foreach($champs as $champ) {
            $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
            // on ajoute au tableau
            $tmp3[$i-1][] = @$tmp2[1];
         }
      // et on retourne le tableau
      return $tmp3;
   }
 
}
 
 
$rss = lit_rss("lefluxrss.xml",array("title"));
// et on affiche..
 
 
foreach($rss as $tab) {
 
if(preg_match("<\!\[CDATA\[(.*)\]\]>",$tab[0],$cdata)) {
        $tab[0]=$cdata[1];
        }
        else {
        $tab[0]=$tab[0];
        }
 
  echo '<div class="news_box">
           <div class="news_box_title">'.$tab[0].'</div>
 
        </div>';
}
merci a vous