Was ist XML?
XML ist die Abkürzung für Extensible Markup Language.
XML wird zum Strukturieren, Speichern und Transportieren von Daten von einem System zu einem anderen verwendet.
XML ähnelt HTML.
Es werden öffnende und schließende Tags verwendet.
Im Gegensatz zu HTML können Benutzer mit XML ihre eigenen Tags definieren.
In diesem Tutorial lernen Sie:
- Was ist DOM?
- XML-Parser
- Warum XML verwenden?
- Beispiel für ein XML-Dokument
- Lesen von XML mit PHP
- So erstellen Sie ein XML-Dokument mit PHP
Was ist DOM?
DOM ist die Abkürzung für Document Object Model.
Es ist ein plattformübergreifender und sprachneutraler Standard, der definiert, wie auf Daten zugegriffen und diese bearbeitet werden.
- HTML
- XHTML
- XML
DOM XML wird verwendet, um auf XML-Dokumente zuzugreifen und diese zu bearbeiten. Es zeigt das XML-Dokument als Baumstruktur an.
XML-Parser
Ein XML-Parser ist ein Programm, das das XML-Dokument in ein DOM-Objekt (XML Document Object Model) übersetzt.
Das XML-DOM-Objekt kann dann mit JavaScript, Python und PHP usw. bearbeitet werden.
Das Schlüsselwort CDATA, das die Abkürzung für (nicht analysierte) Zeichendaten ist, wird verwendet, um Sonderzeichen wie "<,>" beim Parsen eines XML-Dokuments zu ignorieren.
Warum XML verwenden?
- Webdienste wie SOAP und REST verwenden das XML-Format, um Informationen auszutauschen. Wenn Sie lernen, was XML ist und wie es funktioniert, erhalten Sie als Entwickler einen Wettbewerbsvorteil, da moderne Anwendungen Webdienste stark nutzen.
- XML-Dokumente können zum Speichern der Konfigurationseinstellungen einer Anwendung verwendet werden
- Sie können damit Ihre eigenen benutzerdefinierten Tags erstellen, um die Flexibilität zu erhöhen.
Beispiel für ein XML-Dokument
Angenommen, Sie entwickeln eine Anwendung, die Daten von einem Webdienst im XML-Format abruft.
Unten sehen Sie ein Beispiel dafür, wie das XML-Dokument aussieht.
Joe Paul CEO Tasha Smith Finance Manager
HIER,
- "" Gibt die zu verwendende XML-Version und die zu codierende Version an
- "
" ist das Stammelement. - "
... " sind die untergeordneten Elemente der Verwaltung bzw. des Vertriebs.
Lesen von XML mit PHP
Schreiben wir nun den Code, der das XML-Dokument der Mitarbeiter liest und die Ergebnisse in einem Webbrowser anzeigt. Index.php
Employees Listing
';$list = $xml->record;for ($i = 0; $i < count($list); $i++) {echo 'Man no: ' . $list[$i]->attributes()->man_no . '
';echo 'Name: ' . $list[$i]->name . '
';echo 'Position: ' . $list[$i]->position . '
';}?>
HIER,
- "$ Xml = simplexml_load_file ('employee.xml');" verwendet die Funktion simplexml_load_file, um den Dateinamen employee.xml zu laden und den Inhalt der Arrayvariablen $ xml zuzuweisen.
- "$ List = $ xml-> record;" Ruft den Inhalt des Datensatzknotens ab.
- "For ($ i = 0; $ i
- "$ List [$ i] -> Attribute () -> man_no;" liest das man_no-Attribut des Elements
- "$ List [$ i] -> name;" liest den Wert des untergeordneten Namenselements
- "$ List [$ i] -> position;" liest den Wert des untergeordneten Positionselements
Testen unserer Anwendung
Angenommen, Sie haben die Datei index.php im Ordner phptus / xml gespeichert, navigieren Sie zur URL http: //localhost/phptuts/xml/index.php
So erstellen Sie ein XML-Dokument mit PHP
Wir werden uns nun ansehen, wie man ein XML-Dokument mit PHP erstellt.
Wir werden das obige Beispiel im DOM-Baumdiagramm verwenden.
Der folgende Code verwendet das in der Klasse DOMDocument integrierte PHP, um ein XML-Dokument zu erstellen.
encoding = 'utf-8';$dom->xmlVersion = '1.0';$dom->formatOutput = true;$xml_file_name = 'movies_list.xml';$root = $dom->createElement('Movies');$movie_node = $dom->createElement('movie');$attr_movie_id = new DOMAttr('movie_id', '5467');$movie_node->setAttributeNode($attr_movie_id);$child_node_title = $dom->createElement('Title', 'The Campaign');$movie_node->appendChild($child_node_title);$child_node_year = $dom->createElement('Year', 2012);$movie_node->appendChild($child_node_year);$child_node_genre = $dom->createElement('Genre', 'The Campaign');$movie_node->appendChild($child_node_genre);$child_node_ratings = $dom->createElement('Ratings', 6.2);$movie_node->appendChild($child_node_ratings);$root->appendChild($movie_node);$dom->appendChild($root);$dom->save($xml_file_name);echo "$xml_file_name has been successfully created";?>
HIER,
- "$ Dom = new DOMDocument ();" Erstellt eine Instanz der DOMDocument-Klasse.
- "$ Dom-> encoding = 'utf-8';" Setzt die Dokumentcodierung auf utf-8
- "$ Dom-> xmlVersion = '1.0';" Gibt die Versionsnummer 1.0 an
- "$ Dom-> formatOutput = true;" stellt sicher, dass die Ausgabe gut formatiert ist
- "$ Root = $ dom-> createElement ('Filme');" Erstellt den Stammknoten mit dem Namen Filme
- "$ Attr_movie_id = new DOMAttr ('movie_id', '5467');" Definiert das Film-ID-Attribut des Filmknotens
- "$ Child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')" erstellt den untergeordneten Knoten des Filmknotens. ElementName gibt den Namen des Elements an, z. B. Titel. ElementValue legt den Wert des untergeordneten Knotens fest, z. B. Die Kampagne.
- "$ Root-> appendChild ($ movie_node);" Hängt die movie_node-Elemente an den Stammknoten Movies an
- "$ Dom-> appendChild ($ root);" Hängt den Stammknoten an das XML-Dokument an.
- "$ Dom-> save ($ xml_file_name);" speichert die XML-Datei im Stammverzeichnis des Webservers.
- "Echo ''. $ xml_Dateiname. ' wurde erfolgreich erstellt'; ” Erstellt den Link zur XML-Datei.
Testen unserer Anwendung
Angenommen, Sie haben die Datei create_movies_list im Ordner phptuts / xml gespeichert, navigieren Sie zur URL http: //localhost/phptuts/xml/create_movies_list.php
Klicken Sie auf den Link movies_list_xml
Zusammenfassung
- XML ist die Abkürzung für Extensible Markup Language
- XML kann zum Austausch von Informationen zwischen Systemen oder zum Speichern von Konfigurationseinstellungen einer Anwendung usw. verwendet werden.
- DOM ist die Abkürzung für Document Object Model. XML DOM betrachtet das XML-Dokument als Baumstruktur
- Ein XML-Parser ist ein Programm, das XML eines XML-Dokuments in ein DOM-Baumstruktur-ähnliches Dokument übersetzt.
- CDATA wird verwendet, um Sonderzeichen beim Parsen von XML-Dokumenten zu ignorieren.
- PHP verwendet die Datei simplexml_load_file, um XML-Dokumente zu lesen und die Ergebnisse als numerisches Array zurückzugeben
- PHP DOMDocument-Klasse zum Erstellen von XML-Dateien.