X
<?php
# Die callback Funktionen definieren
function startElement($parser, $name, $attrs) {
echo "Open: " . $name . "\n";
}
function endElement($parser, $name) {
echo "Close: " . $name . "\n";
}
function characterData($parser, $data) {
if ($data = trim($data)) {
echo "Data: " . $data . "\n";
}
}
$xml_parser = xml_parser_create(); # Parser erstellen
xml_set_element_handler($xml_parser, "startElement", "endElement"); # callback Funktionen registrieren
xml_set_character_data_handler($xml_parser, "characterData"); # callback Funktionen registrieren
$fp = fopen("book.xml", "r"); # XML-File zum Lesen öffnen
while ($data = fread($fp, 4096)) { # XML-Daten lesen und parsen
if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}
xml_parser_free($xml_parser); # Parser wieder schliessen
?>
X
Open: BOOK Open: TITLE Data: This is an Example-Book Close: TITLE Open: CHAPTER Open: TITLE Data: Title from Chapter 1 Close: TITLE Open: PARA Data: Text in chapter 1 Close: PARA Close: CHAPTER Open: CHAPTER Open: TITLE Data: Title from Chapter 2 Close: TITLE Open: PARA Data: Text in chapter 2 Close: PARA Close: CHAPTER Close: BOOK