Files
php-doc-ru/reference/xml/encoding.xml
2024-04-08 19:33:08 +03:00

64 lines
3.7 KiB
XML
Raw 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"?>
<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<article xml:id="xml.encoding" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Кодировка символов</title>
<para>
Модуль XML в PHP поддерживает набор символов <link
xlink:href="&url.unicode;">Юникода</link> через
разные <glossterm>кодировки символов</glossterm>. Модуль работает с двумя типами
кодировок символов: <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), одним, двумя, тремя или четырьмя байтами.
По умолчанию как исходную PHP использует кодировку <literal>ISO-8859-1</literal>.
</para>
<para>
Целевое кодирование выполняется, когда PHP передаёт данные функциям-обработчикам XML.
Когда создаётся XML-анализатор, PHP устанавливает целевую кодировку
эквивалентной исходной кодировке, но целевую кодировку разрешается изменять
в любой момент. Целевая кодировка затронет символьные данные,
а также имена тегов и цели инструкций обработки.
</para>
<para>
XML-анализатор вернёт ошибку, если встретит символы вне диапазона
символов исходной кодировки.
</para>
<para>
Если в разбираемом XML-документе PHP встречает символы, которые невозможно
представить в целевой кодировке, PHP «понижает» проблемные символы,
то есть заменяет такие символы вопросительным знаком.
</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
-->