Simplexml et children

Simplexml et children - XML/XSL - Programmation

Marsh Posté le 19-01-2009 à 12:01:58    

Bonjour.
 
Voici mon fichier xml.
 

Code :
  1. <infosmail>
  2.    <mail commercial="jerome">
  3.      <principal>aaa@aaa.fr</principal>
  4.      <secondaire>bbb@bbb.fr</secondaire>
  5.    </mail>
  6.    <mail commercial="isa">
  7.      <principal>ccc@ccc.fr</principal>
  8.      <secondaire>ddd@ddd.fr</secondaire>
  9.    </mail>
  10. </infosmail>


 
J'essaye de créer une fonction permettant de récuperer les deux adresses mail d'un commercial bien précis.
 
J'ai bien trouvé cette fonction

Code :
  1. SimpleXMLElement->children — Trouve les enfants d'un noeud XML


 
Est il possible de préciser pour quelle noeud?
 
Par exemple j'aimerais pouvoir récupérer uniquement les mails d'isa.
 
Merci par avance.

Reply

Marsh Posté le 19-01-2009 à 12:01:58   

Reply

Marsh Posté le 22-01-2009 à 11:45:30    

Voila comment tu pourrais faire ca :
 

Code :
  1. <?php
  2. class MemberConfigXml
  3. {
  4. public $source;
  5. public $commercial;
  6. function Parse()
  7. {
  8.  $flux = simplexml_load_file($this->source);
  9.  return $flux;
  10. }
  11. function GetInformation()
  12. {
  13.  foreach ($this->Parse()->mail as $page)
  14.  {
  15.   if($page["commercial"] == $this->commercial)
  16.   {
  17.    echo 'Principal : '.$page->principal;
  18.    echo '<br />';
  19.    echo 'Secondaire : '.$page->secondaire;
  20.   }
  21.  }
  22. }
  23. }
  24. $o = new MemberConfigXml();
  25. $o->source = 'test.xml';
  26. $o->commercial = 'isa';
  27. $o->GetInformation();
  28. ?>


 
Tu boucles sur ton flux, tu checks les attributs et si tu affiches les elements de lattribut que tu as définies

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed