Die Funktion xml_set_character_data_handler() richtet einen Zeichendatenhandler für den XML-Parser ein.
Diese Funktion gibt die Funktion an, die aufgerufen werden soll, wenn der Parser Zeichendaten in der XML-Datei findet.
Bei Erfolg gibt die Funktion TRUE zurück. Wenn dies fehlschlägt, wird FALSE zurückgegeben.
xml_set_character_data_handler(parser,handler)
Parameter | beschreiben |
---|---|
Parser | Erforderlich. Gibt den zu verwendenden XML-Parser an. |
Handler | Erforderlich. Gibt eine Funktion an, die als Ereignishandler verwendet werden soll. |
Die durch den Parameter „handler“ angegebene Funktion muss zwei Parameter haben:
Parameter | beschreiben |
---|---|
Parser | Erforderlich. Gibt eine Variable an, die den XML-Parser enthält, der den Prozessor aufruft. |
Daten | Erforderlich. Gibt eine Variable an, die Zeichendaten in Form einer Zeichenfolge in einer XML-Datei enthält. |
Hinweis: Der Handler-Parameter kann auch ein Array sein, das Objektreferenzen und Methodennamen enthält.
XML-Datei
<?xml version="1.0" binding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don Vergiss mich dieses Wochenende nicht!</body></note>
PHP-Code
<?php$parser=xml_parser_create();function char($parser,$data) { echo $data; }xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml","r") ;while ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) oder die (sprintf("XML-Fehler: %s in Zeile %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
Die Ausgabe des obigen Codes sieht folgendermaßen aus:
Tove Jani Erinnerung: Vergiss mich dieses Wochenende nicht!