PHP xml_set_processing_instruction_handler()-funktio

Määrittely ja käyttö

xml_set_processing_instruction_handler()-funktio määrittää, mikä funktio kutsutaan, kun parseri löytää käsittelyohjeen XML-dokumentista.

Käsittelyohjeet sisältyvät <? ja ?>-erottimiin.

Jos käsittelijä luodaan onnistuneesti, funktio palauttaa true, muuten false.

Esimerkki: Tässä esimerkissä, käsittelyohjeet yhdistävät tyyliarkin XML-dokumenttiin:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet href="default.xsl" type="text/xml"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Muistutus</heading>
<body>Muista minua viikonloppuna!</body>
</note>

syntaksi

xml_set_processing_instruction_handler(parser,handler)
parametrit kuvaus
parser Välttämätön. Määritä käytettävä XML-parsin.
handler Välttämätön. Määritä funktio.

joka handler Määritetty parametri-funktio on pakollinen ja sen täytyy olla kolmen parametrin kanssa:

parametrit kuvaus
parser Välttämätön. Määritä muuttuja, joka sisältää käsittelijän XML-parsin.
target Välttämätön. Määrittää muuttuja, joka sisältää käsittelyohjeen kohteen.
data Välttämätön. Määrittää muuttuja, joka sisältää käsittelyohjeiden tiedot.

Kuvaus

handler Parametrina voi olla myös taulukko, joka sisältää objektin viittauksen ja metodin nimen.

Esimerkki

<?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);
?>