salut,

Le code ci dessous je l'ai copié du web

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php

<xml version="1.0" encoding="ISO-8859-1">
<XML_EXEMPLE>
  <profil>
  	<id>200</id>
  	<prenom>Koogi</prenom>
  </profil>
  <profil>
  	<id>300</id>
  	<prenom>PSAS</prenom>
  </profil>
</XML_EXEMPLE>

<?
// FONCTION qui va lire le fichier XML et le placer dans un tableau
// Cette fonction sert de parseur

function lit_xml($fichier,$item,$champs) {
   // on lit le fichier
   if($chaine = @implode("",@file($fichier))) {
      // on explode sur <item>
      // Dans l'exemple il s'agit de 'profil'
      $tmp = preg_split("/<\/?".$item.">/",$chaine);
      // pour chaque <item> donc tous les profils
      for($i=1;$i<sizeof($tmp)-1;$i+=2)
         // on lit les champs demandés <champ> donc il s'agit de 'id' et 'prenom'
         foreach($champs as $champ) {
            $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
            // on ajoute l'élément au tableau
            $tmp3[$i-1][] = @$tmp2[1];
         }
      // et on retourne le tableau dans la fonction
      return $tmp3;
   }
}

// Lecture du FLUX XML sur le serveur
$xml = lit_xml("http://www.site.com/flux.xml","profil",array("id","prenom"));

// Une petite boucle suffit pour retrouver les élément du tableau
// retourné dans la fonction lit_xml()
foreach($xml as $row) { // ligne 47

  echo $row[0];
  // affiche 200
  echo $row[1];
  // affiche Koogi

  }

?>
Le code m'affiche le contenu du fichier XML mais en plus il affiche aussi une erreur:
Warning: Invalid argument supplied for foreach() in C:\Program Files\EasyPHP 2.0\www\Untitled-1.php on line 47
J'aimerai savoir la cause de cette erreur si vous avez une idée

merci