# xml_set_element_handler

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

xml_set_element_handler — Configura los manejadores para los elementos de inicio y final

### Descripción

xml_set_element_handler(resource `$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`.

### Parámetros

`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:

  start_element_handler(resource `$parser`, string `$name`, array `$attribs`)
  `parser`
    El primer parámetro, parser, hace referencia al intérprete XML que llama al manejador.
  `name`
    El segundo parámetro, `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`
    El tercer parámetro`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:

  end_element_handler(resource `$parser`, string `$name`)
  `parser`
    El primer parámetro, parser, hace referencia al intérprete XML que llama al manejador.
  `name`
    El segundo parámetro, `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.

### Valores devueltos

Devuelve `true` en caso de éxito o `false` en caso de error.