The xml_set_character_data_handler() function establishes a character data handler for the XML parser.
This function specifies the function to be called when the parser finds character data in the XML file.
If successful, the function returns TRUE. If it fails, returns FALSE.
xml_set_character_data_handler(parser,handler)
parameter | describe |
---|---|
parser | Required. Specifies the XML parser to use. |
handler | Required. Specifies a function to be used as an event handler. |
The function specified by the "handler" parameter must have two parameters:
parameter | describe |
---|---|
parser | Required. Specifies a variable containing the XML parser that calls the processor. |
data | Required. Specifies a variable that contains character data in the form of a string in an XML file. |
Note: The handler parameter can also be an array containing object references and method names.
XML file
<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don 't forget me this weekend!</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)) or die (sprintf("XML Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
The output of the above code looks like this:
Tove Jani Reminder Don't forget me this weekend!