(PHP 4, PHP 5, PHP 7)
xml_set_element_handler — Configura los manejadores para los elementos de inicio y final
$parser
, callable $start_element_handler
, callable $end_element_handler
) : bool
Configura las funciones de los manejadores de elementos.
start_element_handler
y
end_element_handler
son strings que contienen los nombres de funciones que deben existir cuando xml_parse() sea llamado por parser
.
parser
Identificador del recurso del intérprete XML para el que se van a configurar las funciones del manejador de elementos de inicio y final.
start_element_handler
La función llamada mediante start_element_handler
debe aceptar tres parámetros:
$parser
, string $name
, array $attribs
)parser
name
name
, contiene el nombre del elemento por el cual el manejador es llamado. Si case-folding está activado para este intérprete, el elemento name estará en letras mayúsculas.
attribs
attribs
, contiene un array asociativo con los atributos del elemento (si hay alguno). Las claves de este array son los nombres de atributo, los valores son los valores de los atributos.
Los nombres de los atributos están en mayúsculas case-folded siguiendo el mismo criterio que los nombres de los elementos.
Los valores de los atributos no sufren las consecuencias de case-folding.
El orden original de los atributos puede ser recuperado recorriendo attribs
de manera normal, usando each(). La primera clave en el array es el primer atributo, y así sucesivamente.
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.
end_element_handler
La función llamada mediante end_element_handler
debe aceptar dos parámetros:
$parser
, string $name
)parser
name
name
, contiene el nombre del elemento por el cual el manejador es llamado. Si case-folding está activado para este intérprete, el elemento name estará en letras mayúsculas.
Si la función del manejador se configura como una cadena vacia, o FALSE
, el manejador en cuestión se deshabilita.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.