L'analyseur DOM intégré permet de traiter des documents XML en PHP, ce qui sera expliqué dans cet article.
Qu'est-ce que le DOM ?
W3C DOM fournit un ensemble standard d'objets pour les documents HTML et XML, ainsi qu'une interface standard pour accéder et manipuler ces documents.
Le DOM du W3C est divisé en différentes parties (Core, XML et HTML) et différents niveaux (DOM niveau 1/2/3) :
* Core DOM - pour tout document structuré Définit un standard ensemble d'objets
* XML DOM - Définit un ensemble standard d'objets pour les documents XML
* HTML DOM - Définit un ensemble standard d'objets pour les documents HTML
Pour en savoir plus sur les connaissances XML DOM, visitez notre tutoriel XML DOM.
Analyse XML
Pour lire et mettre à jour - créer et traiter - un document XML, vous avez besoin d'un analyseur XML.
Il existe deux types de base d'analyseurs XML :
Analyseurs arborescents : cet analyseur convertit un document XML en une structure arborescente. Il analyse l'intégralité du document et donne accès aux éléments de l'arborescence, tels que le modèle objet de document (DOM).
Analyseur basé sur le temps : traite un document XML comme une séquence d'événements. Lorsqu'un événement spécifique se produit, l'analyseur appelle une fonction pour le gérer.
L'analyseur DOM est un analyseur arborescent.
Veuillez examiner le fragment de document XML suivant :
<?xml version="1.0" encoding="ISO-8859-1"?> <from>Jani</from>
XML DOM Considérez le XML ci-dessus comme une structure arborescente :
Niveau 1 : document XML
Niveau 2 : Élément racine :
Niveau 3 : Élément texte : "Jani"
Convertisseur d'analyse XML DOM les fonctions font partie du cœur de PHP. Aucune installation n'est requise pour utiliser ces fonctions.
Fichier XML
Le fichier XML suivant sera utilisé dans notre exemple :
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to> <from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Chargement et sortie XML
Nous devons initialiser l'analyseur XML, charger le XML et le sortir :
Instance
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); print $xmlDoc->saveXML(); ?>
Le code ci-dessus affichera :
ToveJaniReminder Ne m'oubliez pas ce week-end !
Si vous affichez le code source dans une fenêtre de navigateur, vous verrez le code HTML suivant :
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
L'exemple ci-dessus crée un DOMDocument-Object et charge le XML dans "note.xml" dans cet objet document. La fonction
saveXML() place le document XML interne dans une chaîne afin que nous puissions le sortir.
Parcourir XML
Nous souhaitons initialiser l'analyseur XML, charger le XML et parcourir tous les éléments de l'élément <note> :
Instance
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); $x = $xmlDoc->documentElement; foreach ($x->childNodes AS $item) { print $item->nodeName . " = " . $item->nodeValue . "<br>"; } ?>
Le code ci-dessus affichera :
#text =
to = Tove
#text =
from = Jani
#text =
heading = Rappel
#text =
body = Ne m'oubliez pas ce week-end !
#text =
Dans l'exemple ci-dessus, vous voyez qu'il y a des nœuds de texte vides entre chaque élément.
Lorsque XML est généré, il contient généralement des espaces entre les nœuds. L'analyseur XML DOM les traite comme des éléments normaux, ce qui peut parfois poser des problèmes si vous n'y prêtez pas attention.
Cet article explique en détail le traitement des documents XML dans l'analyseur DOM PHP Pour plus de matériel d'apprentissage, veuillez faire attention au site Web php chinois.
Recommandations associées :
À propos des bases de l'analyseur PHP XML Expat
Contenu associé à la base de données PHP ODBC
Connaissance connexe de l'instruction PHP MySQL Supprimer
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!