(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_external_entity_ref_handler — Configura el gestor XML de referencias externas
$parser, callable |string |null $handler): true
Establece el gestor de entidad externa del analizador XML
parser.
parserhandler
Si null se pasa, el controlador se reinicia a su estado predeterminado.
Una cadena vacía también reiniciará el controlador, sin embargo esta funcionalidad está deprecada a partir de PHP 8.4.0.
handler es un callable ,
el callable se define como el controlador.
Si handler es una string ,
puede ser el nombre de un método de un objeto definido con
xml_set_object() .
Esta funcionalidad está deprecada a partir de PHP 8.4.0.
A partir de PHP 8.4.0, se verifica la validez del callable durante la configuración del controlador, y no en el momento de su llamada. Esto significa que xml_set_object() debe ser llamado antes de definir un método como cadena como devolución de llamada. Sin embargo, como este comportamiento también está deprecado a partir de PHP 8.4.0, se recomienda utilizar un callable adecuado para el método.
La firma del gestor debe ser:
$parser,$open_entity_names,$base,$system_id,$public_idparseropen_entity_namesbasesystem_id) de la entidad externa.
system_idpublic_id
El gestor debería devolver true si la entidad ha sido gestionada,
de lo contrario false .
Cuando se devuelve false el analizador XML detendrá el análisis y
xml_get_error_code() devolverá
XML_ERROR_EXTERNAL_ENTITY_HANDLING .
Retorna siempre true .
| Versión | Descripción |
|---|---|
| 8.4.0 |
Pasar un valor no callable de tipo string a
handler ahora está obsoleto;
utilice un callable apropiado para los métodos, o null para reinicializar el gestor.
|
| 8.4.0 |
La validez de handler como callable
ahora se verifica al definir el gestor en lugar de verificarse al invocarlo.
|
| 8.0.0 |
parser ahora espera una instancia de XMLParser
; anteriormente, se esperaba un recurso xml de tipo resource válido.
|
| 7.3.0 |
El valor de retorno de handler ya no es
ignorado cuando la extensión ha sido compilada contra libxml. Anteriormente,
el valor de retorno era ignorado y el análisis nunca se detenía.
|