1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- EN-Revision: 20077 -->
4 <sect2 id="zend.application.available-resources.locale">
5 <title>Zend_Application_Resource_Locale</title>
8 <classname>Zend_Application_Resource_Locale</classname> peut être utilisé pour paramétrer
9 de manière globale la région dans une application qui sera alors utilisée par toutes les
10 classes et les composants qui travaille avec la localisation et l'internationalisation.
14 Il y a basiquement trois cas d'utilisation du plugin de ressource Locale. Chacun pouvant
15 être utilisé suivant les besoins de votre application.
18 <sect3 id="zend.application.available-resources.locale.auto">
19 <title>Autodétection de la locale à utiliser</title>
22 Sans spécifier d'options pour
23 <classname>Zend_Application_Resource_Locale</classname>,
24 <classname>Zend_Locale</classname> va détecter automatiquement la locale, que votre
25 application va utiliser.
29 Cette détection fonctionne car votre client émet la langue souhaitée à l'intérieur
30 de sa requête <acronym>HTTP</acronym>. Normalement le navigateur client envoie
31 les langues qu'il accepte de voir, et <classname>Zend_Locale</classname> utilise
32 cette information pour la détection.
36 Mais il y a deux problèmes avec cette approche :
42 Le navigateur pourrait ne paramétrer aucune langue
48 L'utilisateur pourrait avoir manuellement paramétrer une locale qui n'existe pas
54 Dans ces deux cas <classname>Zend_Locale</classname> reviendra vers d'autres
55 mécanismes pour détecter la locale :
61 Quand une locale inexistante a été fournie, <classname>Zend_Locale</classname>
62 essaie de réduire la chaîne.
66 Quand, par exemple, <emphasis>fr_ZZ</emphasis> a été paramétré, il est
67 automatiquement réduit en <emphasis>fr</emphasis>. Dans ce cas
68 <emphasis>fr</emphasis> sera utilisé en tant que locale pour votre application.
74 Quand la locale ne peut pas non plus être reconnue même après réduction, la
75 locale de votre environnement (serveur Web) sera utilisée. La plupart des
76 environnements des hébergeurs utilise <emphasis>en</emphasis> en tant que
83 Quand la locale de l'environnement ne peut pas non plus être détectée,
84 <classname>Zend_Locale</classname> utilisera sa locale par défaut, qui
85 est par défaut <emphasis>en</emphasis>.
91 Pour de plus amples informations concernant la détection des locales, lisez <link
92 linkend="zend.locale.selection.automatic">le chapitre sur la déctection automatique
93 avec Zend_Locale</link>.
97 <sect3 id="zend.application.available-resources.locale.fallback">
98 <title>Autodétection de la locale avec ajout de votre propre valeur par défaut</title>
101 L'autodétection ci-dessus peut entraîner des problèmes quand la locale ne peut pas être
102 détectée et que vous souhaitez une autre locale par défaut que <emphasis>en</emphasis>.
103 Pour empêcher ceci, <classname>Zend_Application_Resource_Locale</classname> vous permet
104 de paramétrer votre propre locale qui sera utilisée si aucune locale ne peut être
108 <example id="zend.application.available-resources.locale.configExampleDetectAndFallback">
109 <title>Autodétecter la locale et paramétrer une valeur par défaut</title>
112 L'extrait suivant montre comment spécifier sa propre locale utilisée si le client
113 n'envoie pas lui-même une locale.
116 <programlisting language="ini"><![CDATA[
117 ; tentative de détection automaitque,
118 ; si impossible alors on prend fr_FR.
119 resources.locale.default = "fr_FR"
124 <sect3 id="zend.application.available-resources.locale.forcing">
125 <title>Forcer l'utilisation d'une locale</title>
128 Parfois il peut être pratique de définir la locale qui devra être utilisée. Ceci peut
129 être fait en utilisant l'option <property>force</property>.
133 Dasn ce cas, cette locale seule sera utilisée et la détection automatique sera
137 <example id="zend.application.available-resources.locale.configExampleFallbackOnly">
138 <title>Définition de la locale à utiliser</title>
141 L'extrait suivant montre comment spécifier la locale à utiliser pour toute votre
145 <programlisting language="ini"><![CDATA[
146 ; dans tous les cas, fr_FR doit être utilisé
147 resources.locale.default = "fr_FR"
148 resources.locale.force = true