<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.xml.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'zh',
  ),
  'this' => 
  array (
    0 => 'xml.eventhandlers.php',
    1 => '事件处理程序',
    2 => '事件处理程序',
  ),
  'up' => 
  array (
    0 => 'book.xml.php',
    1 => 'XML 解析器',
  ),
  'prev' => 
  array (
    0 => 'xml.constants.php',
    1 => '预定义常量',
  ),
  'next' => 
  array (
    0 => 'xml.case-folding.php',
    1 => '大写转换',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'zh',
    'path' => 'reference/xml/eventhandlers.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="xml.eventhandlers" class="article">
 <h1 class="title">事件处理程序</h1>

 <p class="para">
  XML 事件处理程序的定义如下：
  <table class="doctable table">
   <caption><strong>被支持的 XML 处理程序</strong></caption>
   
    <thead>
     <tr>
      <th>设置处理程序的 PHP 函数</th>
      <th>事件描述</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td><span class="function"><a href="function.xml-set-element-handler.php" class="function">xml_set_element_handler()</a></span></td>
      <td>
       当 XML 解析器遇到开始或结束标签时，会触发元素事件。开始标签和结束标签有不同的处理程序。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-character-data-handler.php" class="function">xml_set_character_data_handler()</a></span>
      </td>
      <td>
       字符数据范指 XML 文档中所有非标记的内容，包括标签之间的空格。注意，XML
       解析器不会添加或删除任何空格，由应用程序(你)来判断空格是否有意义。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-processing-instruction-handler.php" class="function">xml_set_processing_instruction_handler()</a></span>
      </td>
      <td>
       PHP 程序员必须熟练掌握处理指令（PI）。&lt;?php ?&gt;是处理指令，其中 <span class="replaceable">php</span>
       被称为“处理指令对象”。除所有以“XML”开头的处理指令对象是系统保留的外，其他的处理函数均是由应用程序指定的。
      </td>
     </tr>

     <tr>
      <td><span class="function"><a href="function.xml-set-default-handler.php" class="function">xml_set_default_handler()</a></span></td>
      <td>
       不执行其他处理函数，则会执行默认的处理函数。在默认的处理函数中可取得如 XML 和文档类型声明等信息。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-unparsed-entity-decl-handler.php" class="function">xml_set_unparsed_entity_decl_handler()</a></span>
      </td>
      <td>
       未解析的实体声明(NDATA)会调用此处理函数。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-notation-decl-handler.php" class="function">xml_set_notation_decl_handler()</a></span>
      </td>
      <td>
       符号声明会调用此处理函数
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-external-entity-ref-handler.php" class="function">xml_set_external_entity_ref_handler()</a></span>
      </td>
      <td>
       当 XML 解析器发现对外部已解析的普通实体的引用时，
       会调用此处理函数。例如，引用一个文件或URL。实例可参见
       <a href="example.xml-external-entity.php" class="link">XML 外部实体示例</a>。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-start-namespace-decl-handler.php" class="function">xml_set_start_namespace_decl_handler()</a></span>
      </td>
      <td>
       在命名空间声明的开始处调用此处理程序。
      </td>
     </tr>

     <tr>
      <td>
       <span class="function"><a href="function.xml-set-end-namespace-decl-handler.php" class="function">xml_set_end_namespace_decl_handler()</a></span>
      </td>
      <td>
       在命名空间声明的结束处调用此处理程序。请注意，此事件<em>不是</em>由 libXML 触发的。
      </td>
     </tr>

    </tbody>
   
  </table>

 </p>
</div>
<?php manual_footer($setup); ?>