Heim >Backend-Entwicklung >PHP-Tutorial >Verwandte Wissenspunkte zu PHP XML DOM

Verwandte Wissenspunkte zu PHP XML DOM

jacklove
jackloveOriginal
2018-05-07 14:44:251507Durchsuche

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: 66fd2ada9ebb04d4250c850dc1e3737e

Ebene 3: Textelement: „Jani“

Installieren

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&#39;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&#39;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 8197c7d9a62aa70b2f07974ee724bef2-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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn