Der eingebaute DOM-Parser ermöglicht die Verarbeitung von XML-Dokumenten in PHP, was in diesem Artikel erläutert wird.
Was ist DOM?
W3C DOM bietet einen Standardsatz von Objekten für HTML- und XML-Dokumente sowie eine Standardschnittstelle für den Zugriff auf und die Bearbeitung dieser Dokumente.
W3C DOM ist in verschiedene Teile (Core, XML und HTML) und verschiedene Ebenen (DOM Level 1/2/3) unterteilt:
* Core DOM – für jedes strukturierte Dokument Definiert einen Standard Satz von Objekten
* XML DOM – Definiert einen Standardsatz von Objekten für XML-Dokumente
* HTML DOM – Definiert einen Standardsatz von Objekten für HTML-Dokumente
Um mehr über XML-DOM-Kenntnisse zu erfahren, besuchen Sie unser XML-DOM-Tutorial.
XML-Parsing
Um ein XML-Dokument zu lesen und zu aktualisieren - erstellen und verarbeiten - benötigen Sie einen XML-Parser.
Es gibt zwei grundlegende Arten von XML-Parsern:
Baumbasierte Parser: Dieser Parser wandelt ein XML-Dokument in eine Baumstruktur um. Es analysiert das gesamte Dokument und bietet Zugriff auf Elemente in der Baumstruktur, beispielsweise das Document Object Model (DOM).
Zeitbasierter Parser: Behandelt ein XML-Dokument als eine Abfolge von Ereignissen. Wenn ein bestimmtes Ereignis auftritt, ruft der Parser eine Funktion auf, um es zu verarbeiten.
DOM-Parser ist ein baumbasierter Parser.
Bitte schauen Sie sich das folgende XML-Dokumentfragment an:
<?xml version="1.0" encoding="ISO-8859-1"?> <from>Jani</from>
XML DOM Betrachten Sie das obige XML als Baumstruktur:
Ebene 1: XML-Dokument
Ebene 2: Stammelement:
Ebene 3: Textelement: „Jani“
DOM-XML-Parser-Funktion Es ist ein integraler Bestandteil des PHP-Kerns. Für die Nutzung dieser Funktionen ist keine Installation erforderlich.
XML-Datei
Die folgende XML-Datei wird in unserem Beispiel verwendet:
<?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>
XML laden und ausgeben
Wir müssen den XML-Parser initialisieren, das XML laden und ausgeben:
Instanz
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); print $xmlDoc->saveXML(); ?>
Der obige Code wird ausgegeben:
ToveJaniReminder Vergiss mich das nicht Wochenende !
Wenn Sie den Quellcode in einem Browserfenster anzeigen, sehen Sie den folgenden HTML-Code:
<?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>
Das obige Beispiel erstellt ein DOMDocument-Objekt und fügt „note.xml“ in das ein XML wird in dieses Dokumentobjekt geladen. Die Funktion
saveXML() fügt das interne XML-Dokument in einen String ein, damit wir es ausgeben können.
XML durchqueren
Wir möchten den XML-Parser initialisieren, das XML laden und über alle Elemente des <note>-Elements iterieren:
Instanz
<?php $xmlDoc = new DOMDocument(); $xmlDoc->load("note.xml"); $x = $xmlDoc->documentElement; foreach ($x->childNodes AS $item) { print $item->nodeName . " = " . $item->nodeValue . "<br>"; } ?>
Oben wird der Code ausgegeben:
#text =
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Vergiss mich dieses Wochenende nicht!
#text =
Im obigen Beispiel sehen Sie, dass sich zwischen jedem Element leere Textknoten befinden.
Wenn XML generiert wird, enthält es häufig Leerzeichen zwischen Knoten. Der XML-DOM-Parser behandelt sie als normale Elemente, was manchmal zu Problemen führen kann, wenn man ihnen keine Beachtung schenkt.
In diesem Artikel wird die Verarbeitung von XML-Dokumenten im DOM-Parser PHP ausführlich erläutert. Weitere Lernmaterialien finden Sie auf der chinesischen PHP-Website.
Verwandte Empfehlungen:
Über die Grundlagen des PHP-XML-Expat-Parsers
Verwandte Inhalte zur PHP-Datenbank ODBC
Verwandte Kenntnisse der PHP-MySQL-Delete-Anweisung
Das obige ist der detaillierte Inhalt vonVerwandte Wissenspunkte zu PHP XML DOM. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!