<Referencia completa de PHP XML
Definición y Uso
El xml_set_unparsed_entity_decl_handler() la función especifica una función que se llama cuando el analizador una entidad no analizada en el documento XML.
Esta función devuelve TRUE en caso de éxito, en caso de fallo.
Sintaxis
xml_set_unparsed_entity_decl_handler(parser,handler)
Parámetro | Descripción |
---|---|
parser | Necesario. Especifica analizador XML para utilizar |
handler | Necesario. Especifica una función que será cuando el analizador encuentra una declaración de notación |
La función especificada por el "handler" parámetro debe tener seis parámetros:
Parámetro | Descripción |
---|---|
parser | Necesario. Especifica una variable que contiene el analizador XML que llama al gestor |
name | Necesario. Especifica una variable que contiene el nombre de la entidad |
base | Necesario. Especifica una variable que contiene la base para resolver el identificador de sistema (system_id) de la entidad. Actualmente, esto siempre es NULL |
system_id | Necesario. Especifica una variable que contiene el identificador del sistema para la entidad |
public_id | Necesario. Especifica una variable que contiene el identificador público para la entidad |
notation | Necesario. Especifica una variable que contiene la notación que identifica el tipo de datos de la entidad |
Notas y sugerencias
Note: El parámetro de controlador también puede ser una matriz que contiene una referencia de objeto y un nombre de método.
Ejemplo
<?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);
?>
<Referencia completa de PHP XML