PHP xml_set_processing_instruction_handler() συνάρτηση

Ορισμός και χρήση

Η συνάρτηση xml_set_processing_instruction_handler() ορίζει τη συνάρτηση που θα καλείται όταν ο αναλυτής βρει οδηγία επεξεργασίας στο έγγραφο XML.

Η οδηγία επεξεργασίας περιέχεται στα διαχωριστικά <? και ?>.

Αν ο επεξεργαστής δημιουργηθεί επιτυχώς, η συνάρτηση θα επιστρέψει true; αν όχι, θα επιστρέψει false.

Παράδειγμα: Σε αυτό το παράδειγμα, η οδηγία επεξεργασίας συνδέει ένα στυλ με το έγγραφο XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet href="default.xsl" type="text/xml"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Υπενθύμιση</heading>
<body>Μη ξεχάσω με αυτό το Σαββατοκύριακο!</body>
</note>

Γλώσσα

xml_set_processing_instruction_handler(parser,handler)
Παράμετροι Περιγραφή
parser Απαιτείται. Ορίζει τον αναλυτή XML που θα χρησιμοποιηθεί.
handler Απαιτείται. Ορίζει μια συνάρτηση.

από handler Η συνάρτηση που ορίζεται από τις παράμετροι πρέπει να έχει τρεις παράμετροι:

Παράμετροι Περιγραφή
parser Απαιτείται. Ορίζει μια μεταβλητή που περιέχει τον αναλυτή XML για την καλείντη.
target Required. Specifies the variable that contains the processing instruction target.
data Required. Specifies the variable that contains the processing instruction data.

Description

handler The parameter can also be an array containing object references and method names.

Examples

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