Los últimos tutoriales de desarrollo web
 

PHP xml_set_processing_instruction_handler() Function


<Referencia completa de PHP XML

Definición y Uso

El xml_set_processing_instruction_handler() la función especifica una función que se llama cuando el analizador encuentra una instrucción de procesamiento en el documento XML.

Una instrucción de procesamiento está encerrado en <? y?> delimitadores y contiene destino aa seguido por los datos.

Ejemplo: En este caso, la instrucción de procesamiento asocia una hoja de estilo con un documento XML:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="default.xsl" type="text/xml"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Esta función devuelve TRUE en caso de éxito, en caso de fallo.

Sintaxis

xml_set_processing_instruction_handler(parser,handler)

Parámetro Descripción
parser Necesario. Especifica analizador XML para utilizar
handler Necesario. Especifica una función que será cuando el analizador encuentra una declaración de notación

La función especificada por el "handler" parámetro debe tener tres parámetros:

Parámetro Descripción
parser Necesario. Especifica una variable que contiene el analizador XML que llama al gestor
target Necesario. Especifica una variable que contiene objetivo de instrucción de procesamiento
data Necesario. Especifica una variable que contiene datos de instrucciones de procesamiento

Notas y sugerencias

Note: El parámetro de controlador también puede ser una matriz que contiene una referencia de objeto y un nombre de método.


Ejemplo

<?php $parser=xml_parser_create();

function char($parser,$data)
  {
  echo $data;
  }

function pi_handler($parser, $target, $data)
  {
  echo "Target: $target<br />";
  echo "Data: $data<br />";
  }

xml_set_character_data_handler($parser,"char");
xml_set_processing_instruction_handler($parser, "pi_handler");
$fp=fopen("test.xml","r");

while ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) or
  die (sprintf("XML Error: %s at line %d",
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }

xml_parser_free($parser);
?>

<Referencia completa de PHP XML