xml_set_element_handler

(PHP 4, PHP 5, PHP 7, PHP 8)

xml_set_element_handlerSet up start and end element handlers

Description

xml_set_element_handler(XMLParser $parser, callable $start_handler, callable $end_handler): true

Sets the element handler functions for the XML parser.

start_handler is called when a new XML element is opened. end_handler is called when an XML element is closed.

Parameters

parser

The XML parser.

start_handler

If null or an empty string is passed, the handler is reset to its default state.

If handler is a callable, the callable is set as the handler.

If handler is a string, it can be the name of a method of an object set with xml_set_object().

The signature of the handler must be:

start_element_handler(XMLParser $parser, string $name, array $attributes): void
parser
The XML parser calling the handler.
name
Contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters.
attributes
An associative array with the element's attributes. The array is empty if the element has no attributes. The keys of this array are the attribute names, the values are the attribute values. Attribute names are case-folded on the same criteria as element names. Attribute values are not case-folded. The order in which attributes is traversed is identical to the order in which the attributes were declared.

end_handler

If null or an empty string is passed, the handler is reset to its default state.

If handler is a callable, the callable is set as the handler.

If handler is a string, it can be the name of a method of an object set with xml_set_object().

The signature of the handler must be:

end_element_handler(XMLParser $parser, string $name): void
parser
The XML parser calling the handler.
name
Contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters.

Return Values

Always returns true.

Changelog

Version Description
8.0.0 parser expects an XMLParser instance now; previously, a valid xml resource was expected.