PHP xml_set_processing_instruction_handler() Function

The xml_set_processing_instruction_handler() function specifies a function to be called when the parser finds a processing instruction in the XML document.

A processing instruction is enclosed in delimiters and contains a a target followed by data.

bool xml_set_processing_instruction_handler ( resource $parser , callable $handler )

Sets the processing instruction (PI) handler function for the XML parser parser.

A processing instruction has the following format : -

<?
target data
?>
    

You can put PHP code into such a tag, but be aware of one limitation: in an XML PI, the PI end tag (?>) can not be quoted, so this character sequence should not appear in the PHP code you embed with PIs in XML documents.If it does, the rest of the PHP code, as well as the "real" PI end tag, will be treated as character data.

Example: In this case the processing instruction associates a style sheet with an XML document : -

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="default.xsl" type="text/xml"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Example -

ParameterDescription
parserA reference to the XML parser to set up processing instruction (PI) handler function.
handlerRequired. Specifies a function to be when the parser finds a notation declaration

The Function specified by the "handler" parameter must have three parameters : -

ParameterDescription
parserThe first parameter, parser, is a reference to the XML parser calling the handler.
targetThe second parameter, target, contains the PI target.
dataThe third parameter, data, contains the PI data.If a handler function is set to an empty string, or FALSE, the handler in question is disabled.

Returns TRUE on success or FALSE on failure.