14.5 XML mit SAX parsen

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, 4096)) { ...

Get PHP 5 Kochbuch now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.