Gli ultimi tutorial di sviluppo web
 

PHP xml_set_unparsed_entity_decl_handler() Function


<Completa PHP XML

Definizione e l'utilizzo

Il xml_set_unparsed_entity_decl_handler() la funzione specifica una funzione da chiamare quando il parser un'entità non analizzata nel documento XML.

Questa funzione restituisce TRUE se ha successo, oppure FALSE in caso di fallimento.

Sintassi

xml_set_unparsed_entity_decl_handler(parser,handler)

Parametro Descrizione
parser Necessario. Specifica parser XML da usare
handler Necessario. Specifica una funzione da quando il parser trova una dichiarazione di notazione

La funzione specificata dal "handler" parametro deve avere sei parametri:

Parametro Descrizione
parser Necessario. Specifica una variabile che contiene il parser XML chiamante il gestore
name Necessario. Specifica una variabile contenente il nome dell'entità
base Necessario. Specifica una variabile contenente la base per la risoluzione dell'identificatore system (system_id) dell'entità. Attualmente, questo è sempre NULL
system_id Necessario. Specifica una variabile contenente l'identificatore di sistema per l'entità
public_id Necessario. Specifica una variabile che contiene l'identificatore pubblico per l'entità
notation Necessario. Specifica una variabile contenente la notazione che identifica il tipo di dati dell'entità

Suggerimenti e Note

Note: Il parametro conduttore può anche essere un vettore contenente un riferimento oggetto e un nome di metodo.


Esempio

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

<Completa PHP XML