La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.

Présentations similaires


Présentation au sujet: "420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1."— Transcription de la présentation:

1 420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1

2 Fichier XML – test.xml Rabbit Valliant 2

3 Méthode 1 - Simple XML  Permet de charger le document en mémoire et en faire des opérations Lecture à partir d’une chaîne de caractères $xmlObject = simplexml_load_string($xml); ou encore $xml = new SimpleXMLElement($xmlstr); Lecture à partir d’un fichier XML $xmlObject = simplexml_load_file(‘test.xml’); $xml = new SimpleXMLElement(‘http://www.ab.com/test.xml’, NULL, true); 3

4 SimpleXML - Lecture <?php $xmlstr = …; // contient le XML en mémoire dans cette variable $xml = new SimpleXMLElement($xmlstr); /* Pour chaque test, on écrit le nom */ foreach ($xml->test as $test) { echo $test->nom, ' '; } ?> 4

5 SimpleXML - écriture $xml = new SimpleXMLElement($xmlstr); $nodePrenom = $xml->test[0]->addChild(‘prenom’, ‘Roger’); echo $xml->asXML(); Résultat: Rabbit Roger Valliant  Pour avoir la référence complète de SimpleXML, voir : http://ca.php.net/manual/en/simplexml.examples-basic.php 5

6 Méthode 2 - DOMDocument /*créer un contenant pour recevoir le contenu du fichier XML*/ $dom = new DOMDocument(); /*Vérifier si le fichier existe et si oui, le charger dans $dom Si non, créer un document*/ if(file_exists("test.xml")) $dom->load("test.xml"); else $dom->loadXML(" "); 6

7 Créer un nouvel élément /*Créer l'élément test*/ $test = $dom->createElement("test"); /*Créer le noeud nom*/ $nomNoeud = $dom->createElement("nom");  L'élément et le nœud sont créés  Ils ne contiennent rien  Ils ne sont pas placés 7

8 Remplir le nœud et attacher le nœud à l'élement /*Mettre une valeur au nœud*/ $nomNoeud->nodeValue = utf8_encode("Beaupré"); /*Accrocher le nœud à l'élément test*/ $test->appendChild($nomNoeud); /*Ajouter un attribut date à l'élément test*/ $test->setAttribute("date", utf8_encode("2007-01-01")); 8

9 Positionner l'élément dans le document /*Insérer l'élément test avant le premier enfant du document */ $dom-> documentElement->insertBefore( $test, $dom->documentElement->firstChild); $dom->documentElement Racine du document $dom->documentElement->firstChild Premier enfant du document 9

10 Pour détruire le dernier élément $dom->load("test.xml"); $dom-> documentElement->removeChild( $dom->documentElement->lastChild ); $dom->save("test.xml"); 10


Télécharger ppt "420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1."

Présentations similaires


Annonces Google