PHP xml_set_unparsed_entity_decl_handler()Fonctions


PHP XML 参考手册Manuel de référence complet PHP XML

Définition et utilisation

La fonction xml_set_unparsed_entity_decl_handler() spécifie la fonction à appeler lorsque l'analyseur rencontre une entité non analysée dans un document XML.

Retourne TRUE en cas de succès, ou FALSE en cas d'échec.

Syntaxe

xml_set_unparsed_entity_decl_handler(parser,handler)

Parameters Description
parser Requis. Spécifie l'analyseur XML à utiliser.
handler Spécifie la fonction à appeler lorsque l'analyseur rencontre une entité non analysée.

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

Parameters Description
parser Requis. Spécifie une variable contenant l'analyseur XML qui appelle le gestionnaire.
name Requis. Spécifie une variable contenant le nom de l'entité.
base Requis. Spécifie une variable contenant la base pour résoudre l'identifiant système (system_id) de l'entité. Actuellement, ce paramètre est généralement défini à NULL.
system_id Requis. Spécifie une variable contenant l'identifiant système de l'entité.
public_id Requis. Spécifie une variable contenant l'identifiant public de l'entité.
notation Requis. Spécifie une variable contenant la notation qui identifie le type de données de l'entité.


Conseils et notes

Remarque :Le paramètre handler 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);
?>


PHP XML 参考手册Manuel de référence complet PHP XML Autres extensions