Latest web development tutorials
×

PHP Kurs

PHP Kurs PHP Kurze Einführung PHP installieren PHP Grammatik PHP Variable PHP echo/print PHP Datentypen PHP Konstante PHP Schnur PHP Die Betreiber PHP If...Else PHP Switch PHP Feld PHP Sortieren eines Array PHP Superglobals PHP While Verkehr PHP For Verkehr PHP Funktion PHP Magische Variablen PHP Namespaces PHP Objektorientiert

PHP Form

PHP Form PHP Formularauthentifizierung PHP Form - Erforderliche Felder PHP Form - Überprüfung E-Mail und URL PHP Komplette Formularinstanz PHP $_GET Variable PHP $_POST Variable

PHP Erweiterte Tutorial

PHP Mehrdimensionale Arrays PHP Datum PHP enthalten PHP Datei PHP Datei-Upload PHP Cookie PHP Session PHP E-mail PHP Sicherheit E-mail PHP Error PHP Exception PHP Filter PHP Erweiterte Filter PHP JSON

PHP 7 Neue Funktionen

PHP 7 Neue Funktionen

PHP Datenbank

PHP MySQL Kurze Einführung PHP MySQL Verbindung PHP MySQL Erstellen einer Datenbank PHP MySQL Erstellen Sie eine Datentabelle PHP MySQL einfügen von Daten PHP MySQL Legen Sie mehrere Daten PHP MySQL Prepared Statements PHP MySQL Lesen Sie Daten PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX Kurze Einführung AJAX PHP AJAX Datenbank AJAX XML AJAX Echtzeitsuche AJAX RSS Reader AJAX Abstimmung

PHP Referenzhandbuch

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Bildverarbeitung PHP RESTful

PHP XML-Parser Expat

Built-in PHP Expat-Parser macht es möglich, XML-Dokumente zu verarbeiten.


Was ist XML?

XML wird verwendet, um Daten zu beschreiben und zu Ja, welche Daten zu konzentrieren. XML-Datei beschreibt die Struktur der Daten.

In XML gibt es keine vordefinierten Tags. Sie müssen Ihre eigenen Tags definieren.

Um mehr über XML zu erfahren, besuchen Sie bitte unsere XML - Tutorial .


Was für Expat ja?

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).
  • Ereignisbasierte Parser: Das XML-Dokument als eine Reihe von Veranstaltungen. Wenn ein bestimmtes Ereignis eintritt, wird der Parser die Funktion aufrufen zu verarbeiten.

Expat-Parser ist ereignisbasierten Parser.

Ereignisbasierter Parser Fokus auf den Inhalt eines XML-Dokuments, und nicht deren Struktur. Wegen dieses ereignisbasierter Parser kann Daten zugreifen schneller als Baum-basierte Parser.

Betrachten Sie das folgende XML-Fragment:

<from>Jani</from>

Ereignisbasierte Parser meldet die XML oben als eine Serie von drei Veranstaltungen:

  • Startelement: aus
  • Starten Sie CDATA-Abschnitt, Wert: Jani
  • Schließen Element: von

XML-Beispiel oben enthält wohlgeformte XML. Aber dieses Beispiel ist nicht gültig XML, weil die Dokumenttypdeklaration (DTD) ist nicht mit ihm verbunden ist.

Wenn jedoch die Expat-Parser verwenden, macht dies keinen Unterschied. Expat-Parser ist nicht auf Gültigkeit geprüft, jede DTD ignorieren.

Als Event-basierte, nicht-validierenden XML-Parser Expat schnell und leicht, sehr geeignet für PHP-Webanwendungen.

Hinweis: XML - Dokument muss wohlgeformt sein , sonst Expat wird ein Fehler generiert.


installieren

XML Expat-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:

<?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>


Initialisieren Sie den XML-Parser

Wir wollen den XML-Parser in PHP zu initialisieren, definieren Prozessor für verschiedene XML-Ereignisse, und dann die XML-Datei analysieren.

Beispiele

<?php
//Initialize the XML parser
$parser=xml_parser_create();

//Function to use at the start of an element
function start($parser,$element_name,$element_attrs)
{
switch($element_name)
{
case "NOTE":
echo "-- Note --<br>";
break;
case "TO":
echo "To: ";
break;
case "FROM":
echo "From: ";
break;
case "HEADING":
echo "Heading: ";
break;
case "BODY":
echo "Message: ";
}
}

//Function to use at the end of an element
function stop($parser,$element_name)
{
echo "<br>";
}

//Function to use when finding character data
function char($parser,$data)
{
echo $data;
}

//Specify element handler
xml_set_element_handler($parser,"start","stop");

//Specify data handler
xml_set_character_data_handler($parser,"char");

//Open XML file
$fp=fopen("test.xml","r");

//Read data
while ($data=fread($fp,4096))
{
xml_parse($parser,$data,feof($fp)) or
die (sprintf("XML Error: %s at line %d",
xml_error_string(xml_get_error_code($parser)),
xml_get_current_line_number($parser)));
}

//Free the XML parser
xml_parser_free($parser);
?>

Der obige Code ausgeben wird:

-- Note --
To: Tove
From: Jani
Heading: Reminder
Message: Don't forget me this weekend!

Wie es funktioniert:

  1. Durch xml_parser_create () Funktion initialisiert den XML-Parser
  2. Erstellen Sie mit verschiedenen Event-Handler-Funktion
  3. In xml_set_element_handler () Funktion zu definieren, die zur Durchführung funktionieren, wenn der Parser die Start- und End-Tags begegnet
  4. Hinzufügen xml_set_character_data_handler () Funktion zu definieren, die auszuführen funktionieren, wenn der Parser Zeichendaten begegnet
  5. Durch xml_parse () Funktion, um die Datei "test.xml" zu analysieren
  6. Falls es ein Fehler ist, dann fügen Sie xml_error_string () Funktion, um XML-Fehlertext Beschreibung konvertieren
  7. Rufen Sie xml_parser_free () Funktion zur Freigabe xml_parser_create () Funktionsspeicher zugewiesen

Mehr Informationen PHP Expat-Parser

Weitere Informationen über die Funktionen PHP Expat, besuchen Sie unsere PHP XML - Parser - Referenzhandbuch .