xml_set_external_entity_ref_handler
Setting up external entity reference handler
xml_set_external_entity_ref_handler()
function is used to specify the function to be called when the parser finds an external entity in an XML document.
Note: The handler parameter can also be an array containing object references and method names.
Create an XML parser, set up a character data handler, set up an external entity reference handler, and parse the XML document:
<?php // Create XML parser $parser = xml_parser_create ( ) ; function char ( $parser , $data ) { echo $data ; } function ext_ent_handler ( $parser , $ent , $base , $sysID , $pubID ) { echo " $ent <br>" ; echo " $sysID <br>" ; echo " $pubID <br>" ; } // Set character data processing program xml_set_character_data_handler ( $parser , "char" ) ; // Set up external entity reference handler xml_set_external_entity_ref_handler ( $parser , "ext_ent_handler" ) ; $fp = fopen ( "note_entity.xml" , "r" ) ; while ( $data = fread ( $fp , 4096 ) ) { // parse XML data xml_parse ( $parser , $data , feof ( $fp ) ) or die ( sprintf ( "XML error: %s on line %d" , xml_error_string ( xml_get_error_code ( $parser ) ) , xml_get_current_line_number ( $parser ) ) ) ; } xml_parser_free ( $parser ) ; fclose ( $fp ) ; ?>
Run the instance
xml_set_external_entity_ref_handler ( parser , handler )
parameter | describe |
---|---|
parser | Required. Specify the XML parser to use |
Handler |
Required. Specifies the function used as the event handler. This function must accept five parameters:
|