# xml_set_notation_decl_handler

(PHP 4, PHP 5, PHP 7)

xml_set_notation_decl_handler — 建立注释声明处理器

### 说明

xml_set_notation_decl_handler ( resource `$parser` , callable `$handler` ) : bool

为 `parser` 参数指定的 XML 解析器建立注释声明处理器函数。

注释声明是文档 DTD 的一部分，并有如下格式：

    <!NOTATION <parameter>name</parameter>
    {<parameter>system_id</parameter> | <parameter>public_id</parameter>}?>

。请参考 » XML 1.0 参考的第 4.7 节以了解注释声明的定义。

### 参数

`parser`

  XML 解析器的引用，用于设置声明处理器函数。

`handler`

  `handler` 为表示函数名称的字符串，函数必须在为 `parser` 指定的解析器调用 xml_parse() 函数时已存在。

  由 `handler` 参数命名的函数名必须接受五个参数：

  handler ( resource `$parser` , string `$notation_name` , string `$base` , string `$system_id` , string `$public_id` )
  `parser`
    第一个参数 parser 为指向要调用处理器的 XML 解析器的指针。
  `notation_name`
    该参数为以上注释格式定义中的 `name` 参数。
  `base`
    这个参数是解析注释声明的系统标识符（`system_id`）的基础。当前该参数通常都被设置为空字符串。
  `system_id`
    外部注释声明的系统标识符。
  `public_id`
    外部注释声明的公共标识符。

  如果处理器函数名被设置为空字符串或者 `FALSE`，则该有问题的处理器将被屏蔽。

  > Note: 除了函数名，含有对象引用的数组和方法名也可以作为参数。

### 返回值

成功时返回 `TRUE`， 或者在失败时返回 `FALSE`。