Heim >Backend-Entwicklung >PHP-Tutorial >Arbeiten mit XML in PHP: So analysieren Sie XML und erstellen XML-Dokumente

Arbeiten mit XML in PHP: So analysieren Sie XML und erstellen XML-Dokumente

PHPz
PHPzOriginal
2023-06-19 17:02:151433Durchsuche

XML (Extensible Markup Language) ist ein gängiges Datenformat, das in der Webentwicklung weit verbreitet ist. In PHP ist die Verwendung von XML sehr verbreitet, daher ist es für PHP-Entwickler sehr wichtig zu lernen, wie man XML analysiert und XML-Dokumente erstellt.

Dieser Artikel führt Sie in die grundlegenden Methoden zum Parsen von XML und zum Erstellen von XML-Dokumenten in PHP ein.

  1. XML analysieren

Es gibt zwei Möglichkeiten, XML zu analysieren: DOM-basiert und SAX-basiert. DOM (Document Object Model) stellt das gesamte XML-Dokument als Baum dar und wird zur Bearbeitung des gesamten Dokuments verwendet. SAX (Simple API for XML) ist eine Streaming-Parsing-Methode, die XML-Dokumente Knoten für Knoten der Reihe nach liest.

In diesem Artikel konzentrieren wir uns auf DOM-basierte Parsing-Methoden.

Zuerst müssen wir die XML-Datei mit der DOMDocument-Klasse in PHP laden:

$doc = new DOMDocument();
$doc->load('example.xml');

Dadurch wird ein XML-Dokument mit der DOMDocument-Klasse erstellt und die XML-Datei „example.xml“ geladen.

Als nächstes können wir die Methode getElementsByTagName verwenden, um das angegebene XML-Element abzurufen:

$books = $doc->getElementsByTagName('book');

Dadurch werden alle Buchelemente abgerufen und in der Variablen $books gespeichert. Wir können die Werte der Unterelemente und Unterelemente jedes Buchelements erhalten, indem wir über das $books-Array iterieren:

foreach ($books as $book) {
    $title = $book->getElementsByTagName('title')->item(0)->nodeValue;
    $author = $book->getElementsByTagName('author')->item(0)->nodeValue;
    $publisher = $book->getElementsByTagName('publisher')->item(0)->nodeValue;
    echo "$title - $author - $publisher
";
}

Dies wird über alle Buchelemente iterieren und die Werte von Titel, Autor und erhalten Verleger-Unterelemente in jedem Buchelement und setzen Sie werden ausgegeben.

  1. XML-Dokumente erstellen

In PHP können wir die DOMDocument-Klasse verwenden, um XML-Dokumente zu erstellen und Elemente, Attribute und Textknoten hinzuzufügen.

Zuerst müssen wir eine Instanz der DOMDocument-Klasse erstellen:

$doc = new DOMDocument();

Als nächstes können wir die Methode createElement verwenden, um ein Element zu erstellen, und die Methode appendChild, um es dem DOM-Dokument hinzuzufügen:

$book = $doc->createElement('book');
$doc->appendChild($book);

Dadurch wird ein Element erstellt namens „ book“-Element und fügen Sie es dem DOM-Dokument hinzu.

Mit der setAttribute-Methode können wir Elementen Attribute hinzufügen:

$book->setAttribute('id', '1');

Dadurch wird dem Buchelement ein Attribut namens „id“ mit dem Wert „1“ hinzugefügt.

Wir können auch einen Textknoten mit der Methode „createTextNode“ erstellen und ihn mit der Methode „appendChild“ zum Element hinzufügen:

$title = $doc->createElement('title');
$book->appendChild($title);
$title_text = $doc->createTextNode('PHP入门教程');
$title->appendChild($title_text);

Dadurch wird ein untergeordnetes Titelelement für das Buchelement erstellt und ein Textknoten mit dem Namen „Getting Started with PHP Tutorial“ hinzugefügt ".

Schließlich können wir das DOM-Dokument mit der Speichermethode als XML-Datei speichern:

$doc->save('example.xml');

Dadurch wird das DOM-Dokument als Datei mit dem Namen „example.xml“ gespeichert.

Fazit

In PHP ist die XML-Verarbeitung sehr verbreitet. Wir können DOM-basiertes Parsing verwenden, um Elemente und Daten in XML-Dokumenten abzurufen, und die DOMDocument-Klasse verwenden, um XML-Dokumente zu erstellen, Elemente, Attribute und Textknoten hinzuzufügen. Diese Vorgänge können eine große Hilfe für unsere Webentwicklung sein.

Das obige ist der detaillierte Inhalt vonArbeiten mit XML in PHP: So analysieren Sie XML und erstellen XML-Dokumente. 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