14.5 Große XML-Dokumente einlesen (SAX)

Problem

Sie möchten ein XML-Dokument lesen und auf der Basis von Ereignissen formatieren. Ein solches Ereignis tritt etwa ein, wenn der Parser auf ein neues öffnendes oder schließendes Tag trifft. Zum Beispiel möchten Sie einen RSS-Feed in HTML umwandeln.

Lösung

Verwenden Sie die Parser-Funktionen in der XML-Erweiterung zu PHP:

$xml = xml_parser_create(); $obj = new Parser_Object; // eine Klasse zur Parser-Unterstützung xml_set_object($xml,$obj); xml_set_element_handler($xml, 'start_element', 'end_element'); xml_set_character_data_handler($xml, 'character_data'); xml_parser_set_option($xml, XML_OPTION_CASE_FOLDING, false); $fp = fopen('data.xml', 'r') or die("Kann XML-Daten nicht lesen."); while ($data = fread($fp, ...

Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.