PHP xml_set_unparsed_entity_decl_handler()Functions


PHP XML 参考手册Complete PHP XML Reference Manual

Definition and Usage

The xml_set_unparsed_entity_decl_handler() function specifies the function to be called when the parser finds an unparsed entity in an XML document.

Returns TRUE on success, or FALSE on failure.

Syntax

xml_set_unparsed_entity_decl_handler(parser,handler)

Parameters Description
parser Required. Specifies the XML parser to use.
handler Specifies the function to be called when the parser finds an unparsed entity.

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

Parameters Description
parser Required. Specifies a variable containing the XML parser that calls the handler.
name Required. Specifies a variable containing the entity name.
base Required. Specifies a variable containing the base for resolving the system identifier (system_id) of the entity. Currently this parameter is usually set to NULL.
system_id Required. Specifies a variable containing the system identifier of the entity.
public_id Required. Specifies a variable containing the public identifier of the entity.
notation Required. Specifies a variable containing the notation that identifies the data type of the entity.


Tips and Notes

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


Example

<?php $parser=xml_parser_create();

function char($parser,$data)
{
echo $data;
}

function unparsed_ent_handler($parser,$entname,
$base,$sysID,$pubID,$notname)
{
print "$entname<br />";
print "$sysID<br />";
print "$pubID<br />";
print "$notname<br />";
}

xml_set_character_data_handler($parser,"char");
xml_set_unparsed_entity_decl_handler($parser,
"unparsed_ent_handler");

$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);
?>


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