Sahid Ferdjaoui Blog - Funraill Foundation Bienvenue, Log in - thème 2007 RC1

Powered by OpenSource Softwares

Outil de déboggage colaborative
reduire

PHP SimpleXML une bref introduction

le 5 septembre 2006 par sahid

PHP un des meilleurs langages pour la manipulation de documents XML

Les documents XML sont de plus en plus utilisés que ce soit dans le monde du web, avec de nouveaux protocoles tels que l’AJAX, ou encore dans les logiciels. XML sert de base pour tout langage à balisage.

Un document XML

  1. <livre>
  2.         <auteur>
  3.                 Laurent Eric1
  4.         </auteur>
  5.         <titre>
  6.                 La face cachee du Petrole
  7.         </titre>
  8.         <chapitre>
  9.                 <titre>
  10.                         Le monde n’aime pas affronter la realite
  11.                 </titre>
  12.                 <corps>
  13.                         J’ai decouvert que le monde n’aime pas affronter la realite…
  14.                 </corps>
  15.         </chapitre>
  16.         <chapitre>
  17.                 <titre>
  18.                         Le premier forage en 1859 et l’essor du petrole
  19.                 </titre>
  20.                 <corps>
  21.                         Le premier forage petrolier est effectue en 1859…
  22.                 </corps>
  23.         </chapitre>
  24. </livre>

Parcoure d’un document XML, avec SimpleXML

SimpleXML permet la lecture d’un document XML trÚs simplement, on fait appel pour cela à la méthode “simplexml_load_file()” qui charge le document XML, ensuite SimpleXML gÚre chaque noeud du document comme un objet, une autre fonction permet de dérouler son document XML “asXml()”

  1. <?php
  2. /*
  3. * simplexml_load_file()
  4. * Charge un document XML et retourne un simplexml_element
  5. */
  6. $smpXML = simplexml_load_file(‘doc.xml’);
  7.  
  8. echo ‘<h1>’.$smpXML->titre.;
  9. echo ‘<em>par ‘.$smpXML->auteur.‘</em>’;
  10. foreach ($smpXML->chapitre as $chapitre) {
  11.         echo ‘<h2>’.$chapitre->titre.‘</h2>’;
  12.         echo ‘<p>’.$chapitre->corps.‘</p>’;
  13. }
  14. ?>

L’écriture avec SimpleXML, est aussi simple (: que la lecture !

La création d’un noeud est réalisé avec la fonction “addChild()”

  1. <?php
  2. $smpXML = simplexml_load_file(‘doc.xml’);
  3.  
  4. $smpXML->titre = “La Face cachee du PETROLE”;
  5.  
  6. $ajoutChap = $smpXML->addChild(‘chapitre’);
  7. $ajoutChap->addChild(‘titre’, ‘Rencontre avec Albert Speer’);
  8. $ajoutChap->addChild(‘corps’, ‘J\’ai compris a quel point le petrole…’);
  9.  
  10. echo ‘<h1>’.$smpXML->titre.‘</h1>’;
  11. echo ‘<em>par ‘.$smpXML->auteur.‘</em>’;
  12. foreach ($smpXML->chapitre as $chapitre) {
  13.         echo ‘<h2>’.$chapitre->titre.‘</h2>’;
  14.         echo ‘<p>’.$chapitre->corps.‘</p>’;
  15. }
  16. ?>

Un simple lecteur RSS avec SimpleRSS

Une petite application simple, histoire de mettre en pratique nos acquis (:,
un lecteur RSS à partir d’une url… bon on est loin d’un Google Reader …m’enfin avec une feuille de style bien conçue…

  1. <?php
  2. $url = ;
  3. $LecteurRSS = simplexml_load_file($url);
  4.  
  5. echo ‘<h1>Simple Lecteur RSS avec SimpleRSS’;
  6. echo ‘<h2>’.$LecteurRSS->channel->title.‘</h2>’;
  7. foreach ($LecteurRSS->channel->item as $item) {
  8.         echo ‘<h3>’.$item->date.‘ - ‘.$item->titre.‘</h3>’;
  9.         echo ‘<p>’.$item->description.‘</p>’;
  10. }
  11. ?>

En conclusion on peut s’apercevoir que SimpleXML transforme le document XML en un assemblage d’objets, et le principe consiste à parcourir les objets.

sources

Un commentaire pour PHP SimpleXML une bref introduction

  1. Benjamin dit :

    Hello :)

    Merci pour les infos, ca m’a bien aidé pour me lancer : c’est que c’est simple en fait ;)

    Bonne continuation

    Benjamin

Tu peux laisser un commentaire pour PHP SimpleXML une bref introduction