">
Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parJudith Bélanger Modifié depuis plus de 6 années
1
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault
PHP & XML
2
Fichier XML – test.xml <?xml version="1.0" encoding="UTF-8"?> <exemple> <test date=" "> <nom>Rabbit</nom> </test> <test date=" "> <nom>Valliant</nom> </exemple>
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(‘ NULL, true);
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; } ?>
5
SimpleXML - écriture $xml = new SimpleXMLElement($xmlstr);
$nodePrenom = $xml->test[0]->addChild(‘prenom’, ‘Roger’); echo $xml->asXML(); Résultat: <?xml version="1.0" encoding="UTF-8"?> <exemple> <test date=" "> <nom>Rabbit</nom> <prenom>Roger</prenom> </test> <test date=" "> <nom>Valliant</nom> </exemple> Pour avoir la référence complète de SimpleXML, voir :
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("<?xml version=\"1.0\" encoding=\"UTF-8\"?><exemple />");
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
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(" "));
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
10
Pour détruire le dernier élément
$dom->load("test.xml"); $dom-> documentElement->removeChild( $dom->documentElement->lastChild ); $dom->save("test.xml");
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.