función de PHP xml_set_unparsed_entity_decl_handler ()
PHP completa de Referencia XML
Definición y Uso
xml_set_unparsed_entity_decl_handler función () se especifica cuando el analizador no puede resolver para encontrar una entidad en un documento XML que se llama una función.
Si tiene éxito, la función devuelve TRUE. Si se produce un error, devuelve FALSO.
gramática
xml_set_unparsed_entity_decl_handler(parser,handler)
参数 | 描述 |
---|---|
parser | 必需。规定要使用的 XML 解析器。 |
handler | 规定当解析器找到无法解析的实体时被调用的函数。 |
Por el parámetro de función "controlador" debe haber siempre seis parámetros:
参数 | 描述 |
---|---|
parser | 必需。规定一个变量,包含调用处理器的 XML 解析器。 |
name | 必需。规定一个变量,包含实体名称。 |
base | 必需。规定一个变量,包含解析实体的系统标识符(system_id)的基础。当前该参数通常都被设置为 NULL。 |
system_id | 必需。规定一个变量,包含实体的系统标识符。 |
public_id | 必需。规定一个变量,包含实体的公共标识符。 |
notation | 必需。规定一个变量,包含标识实体数据类型的符号。 |
Notas y sugerencias
NOTA: controlador también puede ser un parámetro que contiene una serie de referencias a objetos y nombres de método.
Ejemplos
<?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);
?>
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 completa de Referencia XML