Derniers tutoriels de développement web
 

PHP xml_set_notation_decl_handler() Function


<Complete Référence XML PHP

Définition et utilisation

Le xml_set_notation_decl_handler() fonction spécifie une fonction à appeler lorsque l'analyseur trouve une déclaration de notation dans le document XML.

Cette fonction retourne TRUE en cas de succès, ou si une erreur survient.

Syntaxe

xml_set_notation_decl_handler(parser,handler)

Paramètre La description
parser Champs obligatoires. Indique l'analyseur XML à utiliser
handler Champs obligatoires. Indique une fonction à lorsque l'analyseur trouve une déclaration de notation

La fonction spécifiée par le "handler" paramètre doit avoir cinq paramètres:

Paramètre La description
parser Champs obligatoires. Indique une variable contenant l'analyseur XML qui appelle le gestionnaire
name Champs obligatoires. Indique une variable contenant le nom de la déclaration de notation
base Champs obligatoires. Spécifie la base de résolution de l'identificateur de système (system_id) de la déclaration de notation. À l'heure actuelle, ce qui est toujours NULL
system_id Champs obligatoires. Spécifie une variable contenant l'identificateur de système pour la déclaration de notation
public_id Champs obligatoires. Indique une variable contenant l'identifiant public de la déclaration de notation

Conseils et notes

Note: Le paramètre de gestionnaire peut également être un tableau contenant une référence d'objet et un nom de méthode.


Exemple

<?php
$parser=xml_parser_create();

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

function not_decl_handler($parser,$not,$base,$sysID,$pubID)
  {
  echo "$not<br />";
  echo "$sysID<br />";
  echo "$pubID<BR />";
  }

xml_set_character_data_handler($parser,"char");
xml_set_notation_decl_handler($parser, "not_decl_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);
?>

<Complete Référence XML PHP