<?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 => 'ru',
  ),
  'this' => 
  array (
    0 => 'xml.encoding.php',
    1 => 'Кодировка символов',
    2 => 'Кодировка символов',
  ),
  'up' => 
  array (
    0 => 'book.xml.php',
    1 => 'Разбор XML-документов',
  ),
  'prev' => 
  array (
    0 => 'xml.error-codes.php',
    1 => 'Коды ошибок',
  ),
  'next' => 
  array (
    0 => 'xml.examples.php',
    1 => 'Примеры',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'reference/xml/encoding.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="xml.encoding" class="article">
 <h1 class="title">Кодировка символов</h1>

 <p class="para">
  Модуль XML в PHP поддерживает набор символов <a href="http://www.unicode.org/" class="link external">&raquo;&nbsp;Юникода</a> через
  разные <span class="glossterm">кодировки символов</span>. Модуль работает с двумя типами
  кодировок символов: <span class="glossterm">исходная кодировка</span>
  и <span class="glossterm">целевая кодировка</span>.
  Внутреннее представление документа в PHP кодируется в кодировке
  <code class="literal">UTF-8</code>.
 </p>
 <p class="para">
  Исходное кодирование выполняется при <a href="function.xml-parse.php" class="link">анализе</a>
  XML-документа. Исходную кодировку указывают, когда
  <a href="function.xml-parser-create.php" class="link">создают XML-анализатор</a> (исходную кодировку
  нельзя изменить позже, во время работы XML-анализатора).
  Поддерживаются исходные кодировки <code class="literal">ISO-8859-1</code>,
  <code class="literal">US-ASCII</code> и <code class="literal">UTF-8</code>. Первые две —
  однобайтные кодировки, что означает, что каждый символ представлен одним байтом.
  Кодировка <code class="literal">UTF-8</code> умеет кодировать символы, которые состоят
  из переменного числа битов (вплоть до 21), одним, двумя, тремя или четырьмя байтами.
  По умолчанию как исходную PHP использует кодировку <code class="literal">ISO-8859-1</code>.
 </p>
 <p class="para">
  Целевое кодирование выполняется, когда PHP передаёт данные функциям-обработчикам XML.
  Когда создаётся XML-анализатор, PHP устанавливает целевую кодировку
  эквивалентной исходной кодировке, но целевую кодировку разрешается изменять
  в любой момент. Целевая кодировка затронет символьные данные,
  а также имена тегов и цели инструкций обработки.
 </p>
 <p class="para">
  XML-анализатор вернёт ошибку, если встретит символы вне диапазона
  символов исходной кодировки.
 </p>
 <p class="para">
  Если в разбираемом XML-документе PHP встречает символы, которые невозможно
  представить в целевой кодировке, PHP «понижает» проблемные символы,
  то есть заменяет такие символы вопросительным знаком.
 </p>
</div>
<?php manual_footer($setup); ?>