1
0
mirror of https://github.com/php/doc-zh.git synced 2026-03-24 07:02:15 +01:00
Files
archived-doc-zh/reference/xml/encoding.xml
魔王卷子 1b148ed6fd Update xml
2023-10-11 17:39:51 +08:00

52 lines
2.3 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: torben Status: ready -->
<!-- CREDITS: mowangjuanzi -->
<article xml:id="xml.encoding" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>字符编码</title>
<para>
PHP 的 XML 扩展通过几种不同的<glossterm>字符编码</glossterm>支持 <link
xlink:href="&url.unicode;">Unicode</link> 字符集。有两类字符编码,
<glossterm>原始编码</glossterm><glossterm>目标编码</glossterm>。在
PHP 的内部,文档始终是使用 <literal>UTF-8</literal> 编码。
</para>
<para>
<link linkend="function.xml-parse">解析</link> XML 文档就完成原始编码。<link linkend="function.xml-parser-create">创建 XML
解析器</link>后,可以指定原始编码(在 XML 解析器此后的生命周期里,不能修改)。支持的原始编码有 <literal>ISO-8859-1</literal><literal>US-ASCII</literal>
<literal>UTF-8</literal>。前两种是单字节编码, 即每一个字符表现为一个字节。<literal>UTF-8</literal> 可将字符编码为一串不定数量(最高
21的位bit, 编码为 1 到 4 个字节。PHP 使用的默认原始编码是 <literal>ISO-8859-1</literal>
</para>
<para>
当 PHP 将数据传给 XML 处理函数时,目标编码就完成了。在创建 XML
解析器时,目标编码被设定为与原始编码相同,但可任意修改。目标编码会影响字符数据及标签名,与处理指令目标。
</para>
<para>
如 XML 解析器遇到原始编码所能表示的范围之外的字符时,会返回一个错误。
</para>
<para>
如 PHP 遇到在被解析的 XML 文档中不能用所指定的目标编码表示的字符时,这个问题字符会被“降级”。通常来说,就是那些字符会被替换成问号(?)。
</para>
</article>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->