Inhaltsverzeichnis
1. Übersicht und Installation
2. Ereignishandler
3. Groß- und Kleinschreibung
4. Fehlercodes
Wenn PHP im geparsten XML-Dokument auf ein Zeichen stößt, das nicht durch die angegebene Zielkodierung dargestellt werden kann, wird das Problemzeichen „herabgestuft“. Normalerweise werden diese Zeichen durch Fragezeichen (?) ersetzt.
Heim Backend-Entwicklung XML/RSS-Tutorial XML-Betrieb der PHP-Erweiterung (2) – Installation und Übersicht über den XML-Parser

XML-Betrieb der PHP-Erweiterung (2) – Installation und Übersicht über den XML-Parser

Feb 13, 2017 pm 02:53 PM
php扩展 解析器



1. Übersicht und Installation

XML (eXtensible Markup Language) ist ein A-Datenformat für die Interaktion mit strukturierten Dokumenten. Es handelt sich um einen von der Internet Society (W3C) definierten Standard. Informationen zu XML und verwandten Technologien finden Sie unter http://www.php.cn/.

Diese PHP-Erweiterungsimplementierung unterstützt Expat, geschrieben in PHP von James Clark. Dieses Toolkit kann XML-Dokumente analysieren (aber nicht validieren). Es unterstützt drei von PHP bereitgestellte Zeichenkodierungen: US-ASCII, ISO-8859-1 und UTF-8. UTF-16 wird nicht unterstützt.

Diese Erweiterung erstellt einen XML-Parser und definiert Handler für verschiedene XML-Ereignisse. Jeder XML-Parser verfügt außerdem über eine Handvoll Parameter, die angepasst werden können.

Diese Erweiterung erfordert die PHP-Erweiterung libxml. Das bedeutet, dass --enable-libxml verwendet werden muss, obwohl dies implizit erfolgt, da libxml standardmäßig aktiviert ist.

Standardmäßig verwendet diese Erweiterung die Expat-Kompatibilitätsschicht. Sie können auch expat verwenden. Diese Bibliothek befindet sich unter http://www.php.cn/. Durch die Verwendung des Makefiles in der Expat-Bibliothek wird die Bibliotheksdatei standardmäßig nicht erstellt. Sie können zum Erstellen die folgenden Build-Regeln verwenden:


libexpat.a: $(OBJS)
    ar -rc $@ $(OBJS)
    ranlib $@
Nach dem Login kopieren

Das Quellcode-RPM-Installationspaket von expat finden Sie unter http://www.php.cn/.

Diese Erweiterung ist standardmäßig aktiviert und kann beim Kompilieren über die folgenden Optionen deaktiviert werden: --disable-xml

Diese Funktionen sind standardmäßig aktiviert und verwenden die gebündelte Expat-Bibliothek. Sie können die XML-Unterstützung über den Parameter --disable-xml deaktivieren. Wenn Sie PHP als Modul mit Apache 1.3.9 oder höher kompilieren, verwendet PHP automatisch die mit Apache gebündelte Expat-Bibliothek. Wenn Sie die mitgelieferte Expat-Bibliothek nicht verwenden möchten, verwenden Sie bitte den Parameter --with-expat-dir=DIR, wenn Sie das Konfigurationsskript „configure“ von PHP ausführen, wobei DIR auf das Stammverzeichnis der Expat-Installation verweisen sollte .

Die Windows-Version von PHP bietet integrierte Unterstützung für diese Erweiterung. Um diese Funktionen nutzen zu können, müssen keine zusätzlichen Erweiterungen geladen werden.

2. Ereignishandler

Die Definition des XML-Ereignishandlers lautet wie folgt:

被支持的 XML 处理器
PHP 处理器函数 事件描述
xml_set_element_handler() 当 XML 解析器遇到开始或结束标签时,会触发元素事件。 开始标签和结束标签有不同的处理器。
xml_set_character_data_handler() 字符数据范指 XML 文档中所有非标记的内容,包括标签之间的空格。 注意,XML 解析器不会添加或删除任何空格,由应用程序(你)来判断空格是否有意义。
xml_set_processing_instruction_handler() PHP 程序员必须熟练掌握处理指令(PI)。是处理指令, 其中php被称为“处理指令对象”。 除所有以“XML”开头的处理指令对象是系统保留的外, 其他的处理函数均是由应用程序指定的。
xml_set_default_handler() 不执行其他处理函数,则会执行缺省的处理函数。 在缺省的处理函数中可取得如 XML 和文档类型声明等信息。
xml_set_unparsed_entity_decl_handler() 未解析的实体声明(NDATA)会调用此处理函数。
xml_set_notation_decl_handler() 符号声明会调用此处理函数
xml_set_external_entity_ref_handler() 当 XML 解析器发现对外部已解析的普通实体的引用时, 会调用此处理函数。例如,引用一个文件或URL。实例可参见 XML 外部实体例程。
Unterstützter XML-Handler
PHP-Handler-Funktion Ereignisbeschreibung
xml_set_element_handler( ) td> Elementereignisse werden ausgelöst, wenn der XML-Parser auf ein öffnendes oder schließendes Tag stößt. Offene Tags und schließende Tags haben unterschiedliche Handler.
xml_set_character_data_handler() Der Zeichendatenbereich bezieht sich auf alle nicht getaggten Inhalte im XML-Dokument, einschließlich Leerzeichen zwischen Tags. Beachten Sie, dass der XML-Parser keine Leerzeichen hinzufügt oder entfernt. Es liegt an der Anwendung (Sie), zu bestimmen, ob das Leerzeichen sinnvoll ist.
xml_set_processing_instruction_handler() PHP-Programmierer müssen mit der Verarbeitung von Anweisungen (PI) vertraut sein. ist eine Verarbeitungsanweisung, wobei PHP als „Verarbeitungsanweisungsobjekt“ bezeichnet wird. Außer allen Verarbeitungsanweisungsobjekten, die mit „XML“ beginnen und vom System reserviert sind, werden andere Verarbeitungsfunktionen vom Anwendungsprogramm vorgegeben.
xml_set_default_handler() Wenn andere Verarbeitungsfunktionen nicht ausgeführt werden, wird die Standardverarbeitungsfunktion ausgeführt. Informationen wie XML- und Dokumenttypdeklarationen sind in den Standardhandlerfunktionen verfügbar.
xml_set_unparsed_entity_decl_handler() Eine nicht geparste Entitätsdeklaration (NDATA) ruft diese Handlerfunktion auf.
xml_set_notation_decl_handler() Die Symboldeklaration ruft diese Handlerfunktion auf
xml_set_external_entity_ref_handler() Dieser Handler wird aufgerufen, wenn der XML-Parser einen Verweis auf eine extern analysierte gewöhnliche Entität findet. Verweisen Sie beispielsweise auf eine Datei oder URL. Beispiele finden Sie in den XML-Routinen für externe Entitäten.

3. Groß- und Kleinschreibung

Die Elementverarbeitungsfunktion kann den Elementnamen in Groß- und Kleinschreibung umwandeln. Die Groß-/Kleinschreibung ist definiert als „eine Zeichenfolgenoperation, die Nicht-Großbuchstaben durch die entsprechenden Großbuchstaben ersetzt“. Mit anderen Worten: In XML wird die Groß-/Kleinschreibung in Großbuchstaben umgewandelt.

Standardmäßig werden alle durch den Handler übergebenen Elementnamen in Großbuchstaben umgewandelt. Jeder XML-Parser kann diese Funktion über die Funktionen xml_parser_get_option() bzw. xml_parser_set_option() abfragen und steuern.

4. Fehlercodes

Die folgenden Konstanten sind XML-bezogene Fehlercodes (Rückgabewerte der Funktion xml_parse()):

  • XML_ERROR_NONE

  • XML_ERROR_NO_MEMORY

  • XML_ERROR_SYNTAX

  • XML_ERROR_NO_ELEMENTS

  • XML_ERROR_INVALID_TOKEN

  • XML_ERROR_UNCLOSED_TOKEN

  • XML_ERR. OR_PARTIAL_CHAR

  • XML_ERROR_TAG_MISMATCH

  • XML_ERROR_DUPLICATE_ATTRIBUTE

  • XML_ERROR_JUNK_AFTER_DOC_ELEMENT

  • ML_ERROR_UNDEFINED_ENTITY

  • <.>XML_ERROR_RECURSIVE_ENTITY_REF

  • XML_ERROR_ASYNC_ENTITY

  • XML_ERROR_BAD_CHAR_REF

  • XML_ERROR_BINARY_ENTITY_REF

  • XML _ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF
  • XML_ERROR_MISPLACED_XML_PI
  • XML_ERROR_UNKNOWN_ENCODING
  • XML_ERROR_INCORRECT_ENCODING
  • > XML_ERROR_UNCLOSED_CDATA_SECTION

  • XML_EXTERNAL_EXTITY_HANDLING

  • Mehrere Unterschiede Die Zeichenkodierung unterstützt den Unicode-Zeichensatz. Es gibt zwei Arten von Zeichenkodierungen: Originalkodierung und Zielkodierung. In der internen Darstellung von PHP werden Dokumente immer in UTF-8 kodiert.

  • Wenn das XML analysiert wird, ist die ursprüngliche Kodierung abgeschlossen. Beim Erstellen eines XML-Parsers können Sie die ursprüngliche Kodierung angeben (diese Kodierung kann später im Lebenszyklus des XML-Parsers nicht geändert werden). Die unterstützten Rohkodierungen sind ISO-8859-1, US-ASCII und UTF-8. Die ersten beiden sind Einzelbyte-Kodierungen, d. h. jedes Zeichen wird als ein Byte dargestellt. UTF-8 kann Zeichen in eine Reihe variabler Bitzahlen (bis zu 21) kodieren, die in 1 bis 4 Bytes angeordnet sind. Die in PHP verwendete Standard-Rohkodierung ist ISO-8859-1.
  • Wenn PHP die Daten an die XML-Verarbeitungsfunktion übergibt, ist die Zielkodierung abgeschlossen. Beim Erstellen eines XML-Prozessors wird die Zielcodierung auf die ursprüngliche Codierung festgelegt, kann jedoch nach Belieben geändert werden. Die Zielkodierung wirkt sich auf Zeichendaten und Tag-Namen sowie auf Verarbeitungsanweisungsziele aus.

  • Wenn der XML-Parser auf ein Zeichen außerhalb des Bereichs stößt, den die ursprüngliche Codierung darstellen kann, gibt er einen Fehler zurück.

Wenn PHP im geparsten XML-Dokument auf ein Zeichen stößt, das nicht durch die angegebene Zielkodierung dargestellt werden kann, wird das Problemzeichen „herabgestuft“. Normalerweise werden diese Zeichen durch Fragezeichen (?) ersetzt.

Das Obige ist die XML-Operation der PHP-Erweiterung (2) – XML-Parser-Installation und Übersicht. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie, welche Erweiterungen in PHP verwendet werden So überprüfen Sie, welche Erweiterungen in PHP verwendet werden Aug 01, 2023 pm 04:13 PM

Sie können überprüfen, welche Erweiterungen von PHP verwendet werden, indem Sie die Ausgabe der Funktion phpinfo() anzeigen, Befehlszeilentools verwenden und die PHP-Konfigurationsdatei überprüfen. 1. Sehen Sie sich die Ausgabe der Funktion phpinfo() an, erstellen Sie ein einfaches PHP-Skript, speichern Sie dieses Skript als phpinfo.php und laden Sie es auf Ihren Webserver hoch. Suchen Sie einfach nach dem Schlüsselwort „extension“ oder „extension_loaded“ auf der Seite, um Informationen über die Erweiterung zu finden.

Was ist eine MDI-Datei? Was ist eine MDI-Datei? Feb 18, 2024 pm 01:13 PM

MDI-Dateien sind ein gängiges elektronisches Dokumentformat, dessen vollständiger Name Microsoft Document Imaging ist. Es handelt sich um ein von der Microsoft Corporation entwickeltes Dateiformat zum Speichern und Anzeigen gescannter Dokumente. Mit MDI-Dateien können Benutzer Papierdokumente in digitale Bilder scannen, die auf einem Computer angezeigt, bearbeitet und gedruckt werden können. MDI-Dateien haben viele Vorteile, der erste ist ihre hohe Komprimierbarkeit. MDI-Dateien können gescannte Bilder in der kleinsten Dateigröße speichern, was für die Speicherung und Übertragung von Dokumenten sehr vorteilhaft ist. Zweitens

So erweitern Sie PDO mit PHP, um eine Verbindung zur Oracle-Datenbank herzustellen So erweitern Sie PDO mit PHP, um eine Verbindung zur Oracle-Datenbank herzustellen Jul 29, 2023 pm 07:21 PM

So erweitern Sie PDO mit PHP, um eine Verbindung zur Oracle-Datenbank herzustellen. Einführung: PHP ist eine sehr beliebte serverseitige Programmiersprache und Oracle ist ein häufig verwendetes relationales Datenbankverwaltungssystem. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Erweiterung PDO (PHPDataObjects) eine Verbindung zur Oracle-Datenbank herstellen. 1. Installieren Sie die PDO_OCI-Erweiterung. Um eine Verbindung zur Oracle-Datenbank herzustellen, müssen Sie zunächst die PDO_OCI-Erweiterung installieren. Hier sind die Schritte zum Installieren der PDO_OCI-Erweiterung: Stellen Sie sicher

So erweitern Sie die Berichtserstellungsfunktionalität von SuiteCRM mit PHP So erweitern Sie die Berichtserstellungsfunktionalität von SuiteCRM mit PHP Jul 19, 2023 am 10:27 AM

So erweitern Sie mit PHP die Berichtserstellungsfunktion von SuiteCRM SuiteCRM ist ein leistungsstarkes Open-Source-CRM-System, das umfangreiche Funktionen bietet, um Unternehmen bei der Verwaltung von Kundenbeziehungen zu unterstützen. Eine der wichtigen Funktionen ist die Berichterstellung. Mithilfe von Berichten können Unternehmen ihre Geschäftssituation besser verstehen und richtige Entscheidungen treffen. In diesem Artikel wird erläutert, wie Sie mit PHP die Berichtsgenerierungsfunktion von SuiteCRM erweitern und relevante Codebeispiele bereitstellen. Bevor Sie beginnen, müssen Sie sicherstellen, dass SuiteCRM installiert ist.

Erste Schritte mit PHP: Installation der PHP-Erweiterung Erste Schritte mit PHP: Installation der PHP-Erweiterung May 20, 2023 am 08:49 AM

Bei der Entwicklung mit PHP müssen wir möglicherweise einige PHP-Erweiterungen verwenden. Diese Erweiterungen können uns mehr Funktionen und Tools zur Verfügung stellen und unsere Entwicklungsarbeit effizienter und komfortabler machen. Bevor wir diese Erweiterungen verwenden können, müssen wir sie jedoch zunächst installieren. In diesem Artikel erfahren Sie, wie Sie PHP-Erweiterungen installieren. 1. Was ist eine PHP-Erweiterung? PHP-Erweiterungen beziehen sich auf Komponenten, die der Programmiersprache PHP zusätzliche Funktionen und Dienste bereitstellen. Diese Komponenten können über den Erweiterungsmechanismus von PHP installiert und verwendet werden. Die PHP-Erweiterung kann uns dabei helfen

Wie verwende ich die GeoIP-Erweiterung von PHP? Wie verwende ich die GeoIP-Erweiterung von PHP? Jun 01, 2023 am 09:13 AM

PHP ist eine beliebte serverseitige Skriptsprache, die dynamische Inhalte auf Webseiten verarbeiten kann. Mit der Geoip-Erweiterung für PHP können Sie Informationen über den Standort des Benutzers in PHP abrufen. In diesem Artikel erfahren Sie, wie Sie die Geoip-Erweiterung von PHP verwenden. Was ist die GeoIP-Erweiterung für PHP? Die GeoIP-Erweiterung für PHP ist eine kostenlose Open-Source-Erweiterung, mit der Sie Daten über IP-Adressen und Standortinformationen abrufen können. Diese Erweiterung kann mit der GeoIP-Datenbank verwendet werden, einer von MaxMin entwickelten Datenbank

PHP-Erweiterung und PHP-Versionsverwaltung von Pagoda Panel PHP-Erweiterung und PHP-Versionsverwaltung von Pagoda Panel Jun 21, 2023 am 08:49 AM

Pagoda Panel ist ein Open-Source-Serververwaltungspanel, das Website-Betreibern bequeme Website-Verwaltung, Datenbankverwaltung, SSL-Zertifikatsverwaltung und andere Dienste bietet, aber auch leistungsstarke PHP-Erweiterungs- und PHP-Versionsverwaltungsfunktionen bietet, die die Serververwaltung einfacher und einfacher machen effizient. 1. PHP-Erweiterung PHP-Erweiterung ist ein Modul zur Verbesserung von PHP-Funktionen. Durch die Installation von PHP-Erweiterungen können weitere Funktionen und Dienste implementiert werden, wie zum Beispiel: Accelerator: Accelerator kann die PHP-Leistung erheblich verbessern und die Dienstlast durch Zwischenspeichern von PHP-Skripten reduzieren.

Eingehende Untersuchung der PHP-Erweiterungsentwicklung: Entdecken Sie die Geheimnisse hinter den Kulissen der PHP-Erweiterungsentwicklung Eingehende Untersuchung der PHP-Erweiterungsentwicklung: Entdecken Sie die Geheimnisse hinter den Kulissen der PHP-Erweiterungsentwicklung Feb 19, 2024 pm 11:40 PM

Die Entwicklung von PHP-Erweiterungen ist die Kunst, benutzerdefinierte Funktionen zu erstellen, die PHP-Kernfunktionalität zu erweitern und leistungsfähigere Anwendungen zu erstellen. Es eröffnet neue Möglichkeiten in der PHP-Welt und ermöglicht es Entwicklern, die grundlegenden Einschränkungen der Sprache zu überwinden. Dieser Artikel nimmt Sie mit auf eine Reise durch die Entwicklung von PHP-Erweiterungen und vermittelt Ihnen umfassendes Wissen und praktische Anleitungen von grundlegenden Konzepten bis hin zu fortgeschrittenen Techniken. Grundlagen der Entwicklung von PHP-Erweiterungen Bevor Sie mit der Entwicklung von PHP-Erweiterungen beginnen, müssen Sie einige grundlegende Konzepte verstehen. Was sind PHP-Erweiterungen? Eine PHP-Erweiterung ist eine Dynamic Link Library (DLL), die die PHP-Kernfunktionalität erweitert und neue Datentypen, Funktionen und Klassen bereitstellt. Vorteile von PHP-Erweiterungen PHP-Erweiterungen bieten viele Vorteile, darunter Skalierbarkeit, Flexibilität, Leistungsoptimierung und Code-Wiederverwendung. PHP

See all articles