Rabbit Valliant "> Rabbit Valliant ">

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

Présentations similaires


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

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");


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

Présentations similaires


Annonces Google