/php/function.xml-set-external-entity-ref-handler.html
HTML | 161 lines | 119 code | 42 blank | 0 comment | 0 complexity | 740640d65345db98514920fae18e9b76 MD5 | raw file
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8">
- <title>建立外部实体指向处理器</title>
- </head>
- <body><div class="manualnavbar" style="text-align: center;">
- <div class="prev" style="text-align: left; float: left;"><a href="function.xml-set-end-namespace-decl-handler.html">xml_set_end_namespace_decl_handler</a></div>
- <div class="next" style="text-align: right; float: right;"><a href="function.xml-set-notation-decl-handler.html">xml_set_notation_decl_handler</a></div>
- <div class="up"><a href="ref.xml.html">XML 解析器函数</a></div>
- <div class="home"><a href="index.html">PHP Manual</a></div>
- </div><hr /><div id="function.xml-set-external-entity-ref-handler" class="refentry">
- <div class="refnamediv">
- <h1 class="refname">xml_set_external_entity_ref_handler</h1>
- <p class="verinfo">(PHP 4, PHP 5)</p><p class="refpurpose"><span class="refname">xml_set_external_entity_ref_handler</span> — <span class="dc-title">建立外部实体指向处理器</span></p>
- </div>
-
- <div class="refsect1 description" id="refsect1-function.xml-set-external-entity-ref-handler-description">
- <h3 class="title">说明</h3>
- <div class="methodsynopsis dc-description">
- <span class="type">bool</span> <span class="methodname"><strong>xml_set_external_entity_ref_handler</strong></span>
- ( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$parser</code></span>
- , <span class="methodparam"><span class="type"><a href="language.types.callable.html" class="type callable">callable</a></span> <code class="parameter">$handler</code></span>
- )</div>
- <p class="para rdfs-comment">
- 为 <em><code class="parameter">parser</code></em> 参数指定的 XML 解析器建立外部实体指向处理器函数。
- </p>
- </div>
- <div class="refsect1 parameters" id="refsect1-function.xml-set-external-entity-ref-handler-parameters">
- <h3 class="title">参数</h3>
- <p class="para">
- <dl>
- <dt>
- <span class="term"><em><code class="parameter">parser</code></em></span>
- <dd>
- <p class="para">
- XML 解析器的引用,用于建立外部实体指向处理器。
- </p>
- </dd>
- </dt>
- <dt>
- <span class="term"><em><code class="parameter">handler</code></em></span>
- <dd>
- <p class="para">
- 参数 <em><code class="parameter">handler</code></em> 为表示函数名称的字符串,函数必须在为 <em><code class="parameter">parser</code></em> 指定的解析器调用 <span class="function"><a href="function.xml-parse.html" class="function">xml_parse()</a></span> 函数时已存在。
- </p>
- <p class="para">
- 由 <em><code class="parameter">handler</code></em> 参数命名的函数名必须接受五个参数,并应该返回一个整型值。如果处理器的返回值为 <strong><code>FALSE</code></strong>(这也是函数没有确定返回值时的返回值),XML 解析器将停止解析, <span class="function"><a href="function.xml-get-error-code.html" class="function">xml_get_error_code()</a></span> 函数将返回 <strong><code>XML_ERROR_EXTERNAL_ENTITY_HANDLING</code></strong>。
- <div class="methodsynopsis dc-description">
- <span class="methodname"><span class="replaceable">handler</span></span>
- ( <span class="methodparam"><span class="type">resource</span> <code class="parameter">$parser</code></span>
- , <span class="methodparam"><span class="type">string</span> <code class="parameter">$open_entity_names</code></span>
- , <span class="methodparam"><span class="type">string</span> <code class="parameter">$base</code></span>
- , <span class="methodparam"><span class="type">string</span> <code class="parameter">$system_id</code></span>
- , <span class="methodparam"><span class="type">string</span> <code class="parameter">$public_id</code></span>
- )</div>
- <dl>
- <dt>
- <span class="term"><em><code class="parameter">parser</code></em></span>
- <dd>
- <span class="simpara">
- 第一个参数 <span class="replaceable">parser</span> 为指向要调用处理器的 XML 解析器的指针。
- </span>
- </dd>
- </dt>
- <dt>
- <span class="term"><em><code class="parameter">open_entity_names</code></em></span>
- <dd>
- <span class="simpara">
- 第二个参数 <em><code class="parameter">open_entity_names</code></em> 是为该实体的解析开放的实体名列表(包括被指向的实体名),这些实体名由空格隔开。
- </span>
- </dd>
- </dt>
- <dt>
- <span class="term"><em><code class="parameter">base</code></em></span>
- <dd>
- <span class="simpara">
- 这个参数是解析外部实体的系统标识符(<em><code class="parameter">system_id</code></em>)的基础。当前该参数通常都被设置为空字符串。
- </span>
- </dd>
- </dt>
- <dt>
- <span class="term"><em><code class="parameter">system_id</code></em></span>
- <dd>
- <span class="simpara">
- 第四个参数 <em><code class="parameter">system_id</code></em> 是在实体定义声明中指定的系统标识符。
- </span>
- </dd>
- </dt>
- <dt>
- <span class="term"><em><code class="parameter">public_id</code></em></span>
- <dd>
- <span class="simpara">
- 第五个参数 <em><code class="parameter">public_id</code></em> 是在实体定义声明中指定的公共标识符,如果未指定任何标识符,则该字符串为空。公共标识符中的空格将按照 XML 的要求被正常化。
- </span>
- </dd>
- </dt>
- </dl>
- </p>
- <p class="para">
- 如果处理器函数名被设置为空字符串或者 <strong><code>FALSE</code></strong>,则该有问题的处理器将被屏蔽。
- </p>
- <blockquote class="note"><p><strong class="note">Note</strong>: <span class="simpara">除了函数名,含有对象引用的数组和方法名也可以作为参数。</span></p></blockquote>
- </dd>
- </dt>
- </dl>
- </p>
- </div>
- <div class="refsect1 returnvalues" id="refsect1-function.xml-set-external-entity-ref-handler-returnvalues">
- <h3 class="title">返回值</h3>
- <p class="para">
- 成功时返回 <strong><code>TRUE</code></strong>, 或者在失败时返回 <strong><code>FALSE</code></strong>.
- </p>
- </div>
- </div><hr /><div class="manualnavbar" style="text-align: center;">
- <div class="prev" style="text-align: left; float: left;"><a href="function.xml-set-end-namespace-decl-handler.html">xml_set_end_namespace_decl_handler</a></div>
- <div class="next" style="text-align: right; float: right;"><a href="function.xml-set-notation-decl-handler.html">xml_set_notation_decl_handler</a></div>
- <div class="up"><a href="ref.xml.html">XML 解析器函数</a></div>
- <div class="home"><a href="index.html">PHP Manual</a></div>
- </div></body></html>