PHP Loganalyser mit XMLReader

Bislang haben wir uns SimpleXML und DOMDocument angeschaut. Diese beiden Varianten sind immer dann intressant wenn es sich um XML Dateien handelt, die im Speicher verarbeitet werden können.

Aber was wenn der Speicher knapp oder die XML-Datei zu groß ist?

In einem solchen Fall ist ein Pull Parser zu verwenden. Dieser gibt dem Entwickler bei Bedarf den nächsten Knoten und muss dadurch immer nur einen Teil der Datei im Speicher halten. Der Nachteil dabei ist jedoch, das ein Zugriff auf einzelne Knoten nicht
so flexibel möglich ist wie mit DOM und das der Entwickler den Zustand, also wo er sich gerade im XML Doument befindet selbst verwalten muss.

Vor- und Nachteile von XML Reader

Vorteile

  • Minimierter Speicherverbrauch
  • Knoten können bei Bedarf in DOMDocument konvertiert werden

Nachteil

  • Kein wahlfreier Zugriff auf Knoten
  • Aufwendigere Implementierung das der Zustand und Zugriff im XML Dokument komplizierter ist und selbst verwaltet werden muss.

Navigation