# xml_set_processing_instruction_handler

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

xml_set_processing_instruction_handler — Configura el manejador de instrucciones de proceso (PI)

### Descripción

xml_set_processing_instruction_handler(XMLParser `$parser`, callable `$handler`): bool

Configura la función del manejador de instrucciones de proceso para el intérprete XML. `parser`.

Una instrucción de proceso tiene el siguiente formato:

    <?

target data

    ??>

Se puede poner código PHP dentro de esa etiqueta, pero ser consciente de una limitación: en un XML PI, la etiqueta de cierre PI tag (`?>`) no puede ser entrecomillada, por lo que esta secuencia de caracteres no deberia aparecer en el código PHP embebido con PIs en documentos XML. Si esto sucede, el resto del código PHP, así como la etiqueta de cierre de PI "real", serán tratados como datos de caracteres.

### Parámetros

`parser`

  Identificador del recurso del intérprete XML para el que se va a configurar la función del manejador de instrucción de proceso.

`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 tres parámetros:

  handler(XMLParser `$parser`, string `$target`, string `$data`)
  `parser`
    El primer parámetro, parser, hace referencia al intérprete XML que llama al manejador.
  `target`
    El segundo parámetro, `target`, contiene el PI destino.
  `data`
    El tercer parámetro, `data`, contiene los datos del PI

  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.

### Historial de cambios

Versión | Descripción
--- | ---
8.0.0 | `parser` expects an XMLParser instance now; previously, a valid `xml` resource was expected.