PHP XML-DOM
Built-in PHP DOM-Parser macht es möglich, XML-Dokumente zu verarbeiten.
Was ist das DOM?
W3C-DOM stellt einen Standardsatz von Objekten für die HTML- und XML-Dokumente, sowie die Standardschnittstelle für den Zugriff und Manipulation dieser Dokumente.
W3C-DOM ist in verschiedene Teile getrennt (Core, XML und HTML) und verschiedenen Ebenen (DOM Level 1/2/3):
* Kern DOM - ein strukturiertes Dokument definiert einen Standardsatz von Objekten
* XML-DOM - XML-Dokument definiert einen Standardsatz von Objekten
* HTML DOM - definiert für HTML-Dokumente eine Reihe von Objekten eine Standard
Um mehr über das Wissen des XML - DOM, besuchen Sie unsere lernen XML - DOM - Tutorial .
XML-Parsing
Zum Lesen und Update - Erstellung und Verarbeitung - ein XML-Dokument, müssen Sie einen XML-Parser.
Es gibt zwei Grundtypen von XML-Parser:
- Baum-basierte Parser: Dieser Parser wandelt ein XML-Dokument in eine Baumstruktur. Er analysiert das gesamte Dokument, und bietet Zugriff auf die Elemente in dem Baum, wie das Document Object Model (DOM).
- Zeitbasierte Parser: Das XML-Dokument als eine Reihe von Ereignissen. Wenn ein bestimmtes Ereignis eintritt, wird der Parser die Funktion aufrufen zu verarbeiten.
DOM-Parser ist ein Baum-basierte Parser.
Betrachten Sie das folgende XML-Dokumentfragment:
<from>Jani</from>
XML DOM Die XML oben als Baumstruktur:
- Ebene 1: XML-Dokument
- Stufe 2: das Wurzelelement: <von>
- Stufe 3: Textelement: "Jani"
installieren
DOM XML-Parser-Funktionen sind Bestandteil von PHP. Keine Installation notwendig, um diese Funktionen zu nutzen.
XML-Datei
Die XML-Datei unten wird in unserem Beispiel verwendet werden:
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Laden und Ausgabe von XML
Wir müssen den XML-Parser zu initialisieren XML zu laden, und gibt es:
Beispiele
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
print $xmlDoc->saveXML();
?>
Der obige Code ausgeben wird:
Wenn Sie den Quellcode im Browser-Fenster anzuzeigen, werden Sie den folgenden HTML sehen:
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Das obige Beispiel erzeugt ein DOMDocument-Objekt, und die "note.xml" Laden Sie das Dokument im XML-Objekt.
saveXML () Funktion des internen XML-Dokument in einen String, so können wir sie exportieren.
Verfahrgeschwindigkeit XML
Wir wollen den XML-Parser zu initialisieren XML zu laden und durchqueren alle Elemente <note> Element:
Beispiele
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");
$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item)
{
print $item->nodeName . " = " . $item->nodeValue . "<br>";
}
?>
Der obige Code ausgeben wird:
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Don't forget me this weekend!
#text =
In dem obigen Beispiel sehen Sie das Vorhandensein von Luft zwischen den einzelnen Elementen des Textknotens.
Wenn XML erzeugt wird, wird es in der Regel enthalten Zuschnitten zwischen den Knoten. XML-DOM-Parser sie als gemeinsame Elemente, wenn Sie die Aufmerksamkeit auf sie zu bezahlen, manchmal zu Problemen führen.
Um mehr über das Wissen des XML - DOM, besuchen Sie unsere lernen XML - DOM - Tutorial .