<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 20774 -->
<!-- Reviewed: no -->
<sect2 id="zend.filter.set.normalizedtolocalized">

    <title>NormalizedToLocalized</title>

    <para>
        Ce filtre est l'inverse de
        <classname>Zend_Filter_LocalizedToNormalized</classname> et convertira toute entrée normalisée
        en entrée localisée. Il utilise <classname>Zend_Locale</classname> pour celà.
    </para>

    <para>
        Ceci permet de représenter une valeur normalisée dans la locale de l'utilisateur, qu'il reconnaitra
        donc sans problème.
    </para>

    <note>
        <para>
            Notez bien que la localisation n'est pas de la traduction, ce filtre ne sait pas traduire des chaines
            d'une langue à l'autre (comme des noms de jours ou de mois).
        </para>
    </note>

    <para>
        Les types suivants peuvent être localisés:
    </para>

    <itemizedlist>
        <listitem>
            <para>
                <emphasis>entiers</emphasis>: Nombres entiers.
            </para>
        </listitem>

        <listitem>
            <para>
                <emphasis>float</emphasis>: Nombres flottants.
            </para>
        </listitem>

        <listitem>
            <para>
                <emphasis>nombres</emphasis>: Autres nombres, comme les réels.
            </para>
        </listitem>

        <listitem>
            <para>
                <emphasis>temps</emphasis>: Valeurs de temps, localisées sous forme de chaines.
            </para>
        </listitem>

        <listitem>
            <para>
                <emphasis>date</emphasis>: Valeurs de dates, localisées sour forme de chaines.
            </para>
        </listitem>
    </itemizedlist>

    <para>
        Tout autre type d'entrée sera retourné tel quel, sans transformation.
    </para>

    <sect3 id="zend.filter.set.normalizedtolocalized.numbers">

        <title>Localisation des nombres</title>

        <para>
            Tout type de nombre peut être localisé, à l'exception des nombres représentant une notation scientifique.
        </para>

        <para>
            Comment fonctionne la localisation pour les nombres ?:
        </para>

        <programlisting language="php"><![CDATA[
// Initialise le filtre
$filter = new Zend_Filter_NormalizedToLocalized();
$filter->filter(123456.78);
// retourne '123.456,78'
]]></programlisting>

        <para>
            Imaginons que vous avez affecté une locale 'de' comme locale de l'application.
            <classname>Zend_Filter_NormalizedToLocalized</classname> va utiliser cette locale
            pour détecter le type de sortie à produire, ceci sous forme de chaine de caractères.
        </para>

        <para>
            Il est aussi possible de contrôler le look de vos nombres localisés. Pour cela vous pouvez préciser toute option
            que <classname>Zend_Locale_Format</classname> reconnait. Les plus courantes sont:
        </para>

        <itemizedlist>
            <listitem>
                <para>
                    <emphasis>date_format</emphasis>
                </para>
            </listitem>

            <listitem>
                <para>
                    <emphasis>locale</emphasis>
                </para>
            </listitem>

            <listitem>
                <para>
                    <emphasis>precision</emphasis>
                </para>
            </listitem>
        </itemizedlist>

        <para>
            Pour plus de détails sur ces options, voyez le <link linkend="zend.locale.parsing"> chapitre sur
            Zend_Locale </link>.
        </para>

        <para>
            Voici un exemple utilisant ces options:
        </para>

        <programlisting language="php"><![CDATA[
// Numeric Filter
$filter = new Zend_Filter_NormalizedToLocalized(array('precision' => 2));

$filter->filter(123456);
// retourne '123.456,00'

$filter->filter(123456.78901);
// retourne '123.456,79'
]]></programlisting>

    </sect3>

    <sect3 id="zend.filter.set.normalizedtolocalized.dates">

        <title>Localiser des dates et des temps</title>

        <para>
            Les dates et les temps peuvent aussi être localisés. Des chaines de caractères sont alors retournées,
            agissant avec la locale définie.
        </para>

        <programlisting language="php"><![CDATA[
// Initialise le filtre
$filter = new Zend_Filter_NormalizedToLocalized();
$filter->filter(array('day' => '12', 'month' => '04', 'year' => '2009');
// retoures '12.04.2009'
]]></programlisting>

        <para>
            Imaginons que vous ayiez spécifié la locale 'de' au niveau de l'application, celle-ci est alors
            automatiquement détectée et utilisée pour localiser la date.
        </para>

        <para>
            Bien sûr, vous pouvez contrôler le format d'affichage de vos dates, grâce aux paramètres
            <emphasis>date_format</emphasis> et <emphasis>locale</emphasis>.
        </para>

        <programlisting language="php"><![CDATA[
// Date Filter
$filter = new Zend_Filter_LocalizedToNormalized(
    array('date_format' => 'ss:mm:HH')
);

$filter->filter(array('hour' => '33', 'minute' => '22', 'second' => '11'));
// retourne '11:22:33'
]]></programlisting>
    </sect3>

</sect2>

<!--
vim:se ts=4 sw=4 et:
-->