xml_set_external_entity_ref_handler

(PHP 4, PHP 5, PHP 7)

xml_set_external_entity_ref_handlerConfigura el manejador de referencia a entidades externas

Descripción

xml_set_external_entity_ref_handler ( resource $parser , callable $handler ) : bool

Configura la función del manejador de referencia a entidades externas para el intérprete XML parser.

Parámetros

parser

Identificador del recurso del intérprete XML para el que se va a configurar la función del manejador de referencia a entidades externas

handler

handler es un string que contiene el nombre de una función que debe existir cuando xml_parse() es llamado por parser.

La función llamada mediante handler debe aceptar cinco parámetros, y deberia devolver un número entero. Si el valor devuelto desde el manejador es FALSE (lo cual ocurrirá si no se devulve un valor), el intérprete XML detendrá el analizado y xml_get_error_code() devolverá XML_ERROR_EXTERNAL_ENTITY_HANDLING.

handler ( resource $parser , string $open_entity_names , string $base , string $system_id , string $public_id )
parser
El primer parámetro, parser, hace referencia al intérprete XML que llama al manejador.
open_entity_names
El segundo parámetro, open_entity_names, es una lista separada por espacios de los nombres de las entidades que estan abiertas para el análisis de esta entidad (incluyendo el nombre de la entidad referenciada).
base
Esta es la base para resolver el identificador de sistema (system_id) de la declaración de notación. Actualmente este parámetro siempre se establecerá como una cadena vacia.
system_id
El cuarto parámetro, system_id, es el identificador de sistema tal como se especifica en la declaración de entidad.
public_id
El quinto parámetro, public_id, es el identificador público tal como se especifica en la declaración de entidad, o una cadena vacia si no se habia especificado; en el identificador público el espacio en blanco se habrá normalizado como lo requerido mediante las especificaciones XML.

Si la función del manejador se configura como una cadena vacia, o FALSE, el manejador en cuestión se deshabilita.

Nota: En lugar del nombre de una función, se puede asignar un array que contenga la referencia a un objeto o el nombre de un método.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.