Derniers tutoriels de développement web
 

PHP xml_set_unparsed_entity_decl_handler() Function


<Complete Référence XML PHP

Définition et utilisation

Le xml_set_unparsed_entity_decl_handler() fonction spécifie une fonction à appeler lorsque l'analyseur d' une entité non analysée dans le document XML.

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

Syntaxe

xml_set_unparsed_entity_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 six 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 l'entité
base Champs obligatoires. Spécifie une variable contenant la base de résolution de l'identificateur de système (system_id) de l'entité. À l'heure actuelle, ce qui est toujours NULL
system_id Champs obligatoires. Spécifie une variable contenant l'identifiant système pour l'entité
public_id Champs obligatoires. Spécifie une variable contenant l'identifiant public de l'entité
notation Champs obligatoires. Spécifie une variable contenant la notation identifiant le type de l'entité de données

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 unparsed_ent_handler($parser,$entname,
$base,$sysID,$pubID,$notname)
  {
  print "$entname<br />";
  print "$sysID<br />";
  print "$pubID<br />";
  print "$notname<br />";
  }

xml_set_character_data_handler($parser,"char");
xml_set_unparsed_entity_decl_handler($parser,
"unparsed_ent_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