<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->

<book xml:id="book.mbstring" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <?phpdoc extension-membership="bundled" ?>
 <title>Multibyte String</title> 
 
 <!-- {{{ preface -->
 <preface xml:id="intro.mbstring">
  &reftitle.intro;
  <para>
   While there are many languages in which every necessary character can
   be represented by a one-to-one mapping to an 8-bit value, there are also
   several languages which require so many characters for written
   communication that they cannot be contained within the range a mere byte 
   can code (A byte is made up of eight bits. Each bit can contain only two 
   distinct values, one or zero. Because of this, a byte can only represent 
   256 unique values (two to the power of eight)). Multibyte character 
   encoding schemes were developed to express more than 256 characters 
   in the regular bytewise coding system.
  </para>
  <para>
   When you manipulate (trim, split, splice, etc.) strings encoded in a
   multibyte encoding, you need to use special functions since two or more
   consecutive bytes may represent a single character in such encoding
   schemes. Otherwise, if you apply a non-multibyte-aware string function
   to the string, it probably fails to detect the beginning or ending of
   the multibyte character and ends up with a corrupted garbage string that
   most likely loses its original meaning.
  </para>
  <para>
   <literal>mbstring</literal> provides multibyte specific string functions 
   that help you deal with multibyte encodings in PHP. In addition to that, 
   <literal>mbstring</literal> handles character encoding conversion between 
   the possible encoding pairs. <literal>mbstring</literal> is designed to 
   handle Unicode-based encodings such as UTF-8 and UCS-2 and many 
   single-byte encodings for convenience (listed in <link linkend="mbstring.supported-encodings">Supported Character Encodings</link>).
  </para>
 </preface>
 <!-- }}} -->
 
 &reference.mbstring.setup;
 &reference.mbstring.constants;
 &reference.mbstring.encodings;
 &reference.mbstring.ja-basic;
 &reference.mbstring.http-inout;
 &reference.mbstring.supported-encodings;
 &reference.mbstring.overloading;
 &reference.mbstring.encoding-requirements;
 &reference.mbstring.reference;

</book>

<!-- 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
-->

