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:
merci a vous
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>'; }
Partager