xml_set_unparsed_entity_decl_handler
xml_set_unparsed_entity_decl_handler
(PHP 4, PHP 5, PHP 7)
xml_set_unparsed_entity_decl_handler - 设置未解析的实体声明处理程序
描述
bool xml_set_unparsed_entity_decl_handler ( resource $parser , callable $handler )
为XML解析器设置未解析的实体声明处理函数parser
。
如果XML解析器遇到具有NDATA声明的外部实体声明,则会调用该处理程序,如下所示:
<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>}
NDATA <parameter>notationName</parameter>
请参阅XML 1.0规范的第4.2.2节,了解有关标注声明外部实体的定义。
参数
parser
引用XML解析器来设置未解析的实体声明处理函数。
handler
handler是一个字符串,它包含为解析器调用xml_parse()时必须存在的函数的名称。
由处理程序命名的函数必须接受六个参数:
handler ( resource $parser , string $entity_name , string $base , string $system_id , string $public_id , string $notation_name )
解析器第一个参数parser是对调用处理程序的XML解析器的引用。 entity_name是将要定义的实体的名称。 base是解析外部实体的系统标识符(systemId)的基础。目前此参数将始终设置为空字符串。 system_id是外部实体的系统标识符。 public_id是外部实体的公共标识符。 notation_name是此实体的表示法的名称(请参阅xml_set_notation_decl_handler())。
如果一个处理函数被设置为一个空字符串,或者返回FALSE,则该处理程序被禁用。
注意
:也可以提供包含对象引用和方法名称的数组,而不是函数名称。
返回值
成功时返回TRUE
或失败时返回FALSE
。
← xml_set_start_namespace_decl_handler