php8.5
Home/ Manual/ xml / functions/ xml_set_external_entity_ref_handler

xml_set_external_entity_ref_handler

PHP function Edit on GitHub ✎

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

Set up external entity reference handler

Description

xml_set_external_entity_ref_handler(XMLParser $parser, callable|string|null $handler): true

Sets the external entity reference handler function for the XML parser parser.

Parameters

handler

Description

The signature of the handler must be:

handler(XMLParser $parser, string $open_entity_names, string|false $base, string $system_id, string|false $public_id): bool
open_entity_names

A space-separated list of the names of the entities that are open for the parse of this entity (including the name of the referenced entity).

base

This is the base for resolving the system identifier (system_id) of the external entity.

system_id

The system identifier as specified in the entity declaration.

public_id

The public identifier as specified in the entity declaration, or an empty string if none was specified; the whitespace in the public identifier will have been normalized as required by the XML spec.

The handler should return true if the entity was handled, false otherwise. When returning false the XML parser will stop parsing and xml_get_error_code() will return XML_ERROR_EXTERNAL_ENTITY_HANDLING.

Return Values

Always

Changelog

VersionDescription
7.3.0The return value of the handler is no longer ignored if the extension has been built against libxml. Formerly, the return value has been ignored, and parsing did never stop.

Source: reference/xml/functions/xml-set-external-entity-ref-handler.xml · from the official PHP manual (php/doc-en)