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

<book xml:id="book.intl" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <?phpdoc extension-membership="bundled" ?>
 <title>Internationalization Functions</title>
 <titleabbrev>intl</titleabbrev>

 <!-- {{{ Preface -->
 <preface xml:id="intro.intl">
  &reftitle.intro;
  <para>
   Internationalization extension (further is referred as Intl) is a wrapper
   for <link xlink:href="&url.icu.home;">ICU</link>
   library, enabling PHP programmers to perform various locale-aware operations including
   but not limited to formatting, transliteration, encoding conversion, calendar operations,
   <link xlink:href="&url.icu.uca;">UCA</link>-conformant collation, locating
   text boundaries and working with locale identifiers, timezones and graphemes.
  </para>

  <para>
   It tends to closely follow ICU APIs, so that people having experience
   working with ICU in either C/C++ or Java could easily use the PHP API.
   Also, this way ICU documentation would be useful to understand various ICU
   functions.
  </para>

  <para>
   Intl consists of several modules, each of them exposes the corresponding
   ICU API:
  </para>

  <itemizedlist>
   <listitem>
    <simpara>
     Collator: provides string comparison capability with support for
     appropriate locale-sensitive sort orderings.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Number Formatter: allows to display number according to the localized
     format or given pattern or set of rules, and to parse strings into
     numbers.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Message Formatter: allows to create messages incorporating data (such
     as numbers or dates) formatted according to given pattern and locale
     rules, and parse messages extracting data from them. It can handle plurals,
     locale-aware numbers, currencies, conditions and much more.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Normalizer: provides a function to transform text into one of the Unicode
     normalization forms, and provides a routine to test if a given string is
     already normalized.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Locale: provides interaction with locale identifiers in the form of
     functions to get subtags from locale identifier; parse, compose,
     match(lookup and filter) locale identifiers.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Calendar: provides a class which could be used for locale-aware calendar operations
     and getting various information such as timezone for locale chosen, first day of week
     or if it's daylight saving time now.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Timezone: provides a wrapper around the <link xlink:href="&url.icu.tzdatabase;">"Olson" database</link>
     which has information about all the timezones around the world.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Date formatter: allows to display date and time according to the localized
     format or given pattern or set of rules, and to parse strings into
     date and time.
    </simpara>
   </listitem>
   <listitem>
    <simpara>
     Transliterator: allows getting latin representation of strings in various languages.
    </simpara>
   </listitem>
  </itemizedlist>

  <!-- {{{ Links -->
  <section xml:id="intl.links">
   <title>Links</title>
   <itemizedlist>
    <listitem>
     <para><link xlink:href="&url.icu.docs;">Miscellaneous ICU docs</link></para>
    </listitem>
    <listitem>
     <para><link xlink:href="&url.icu.userguide;">ICU User Guide</link></para>
    </listitem>
    <listitem>
     <para><link xlink:href="&url.icu.uca;">Unicode Collation Algorithm</link></para>
    </listitem>
   </itemizedlist>
  </section>
  <!-- }}} -->

 </preface>
 <!-- }}} -->

 &reference.intl.setup;
 &reference.intl.constants;
 &reference.intl.examples;

 &reference.intl.collator;
 &reference.intl.numberformatter;
 &reference.intl.locale;
 &reference.intl.normalizer;
 &reference.intl.messageformatter;
 &reference.intl.intlcalendar;
 &reference.intl.intlgregoriancalendar;
 &reference.intl.intltimezone;
 &reference.intl.dateformatter;
 &reference.intl.resourcebundle;
 &reference.intl.spoofchecker;
 &reference.intl.transliterator;
 &reference.intl.intlbreakiterator;
 &reference.intl.intlrulebasedbreakiterator;
 &reference.intl.intlcodepointbreakiterator;
 &reference.intl.intldatepatterngenerator;
 &reference.intl.intlpartsiterator;
 &reference.intl.uconverter;

 &reference.intl.grapheme;
 &reference.intl.idn;
 &reference.intl.intlchar;

 &reference.intl.intlexception;
 &reference.intl.intliterator;

 &reference.intl.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
-->
