PHP xml_set_character_data_handler()Functions


PHP XML 参考手册Complete PHP XML Reference Manual

Definition and Usage

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, it returns FALSE.

Syntax

xml_set_character_data_handler(parser,handler)

Parameter Description
parser Required. Specifies the XML parser to use.
handler Required. Specifies the function to be used as the event handler.

The function specified by the "handler" parameter must have two parameters:

Parameter Description
parser Required. Specifies a variable containing the XML parser that calls the handler.
data Required. Specifies a variable containing the character data from the XML file in string form.


Tips and Notes

Note:The handler parameter can also be an array containing an object reference and a method name.


Examples

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 is shown below:

Tove Jani Reminder Don't forget me this weekend!


PHP XML 参考手册Complete PHP XML Reference Manual Other Extensions