Zend_Application_Resource_LocaleZend_Application_Resource_Locale peut être utilisé pour paramétrer
de manière globale la région dans une application qui sera alors utilisée par toutes les
classes et les composants qui travaille avec la localisation et l'internationalisation.
Il y a basiquement trois cas d'utilisation du plugin de ressource Locale. Chacun pouvant
être utilisé suivant les besoins de votre application.
Autodétection de la locale à utiliser
Sans spécifier d'options pour
Zend_Application_Resource_Locale,
Zend_Locale va détecter automatiquement la locale, que votre
application va utiliser.
Cette détection fonctionne car votre client émet la langue souhaitée à l'intérieur
de sa requête HTTP. Normalement le navigateur client envoie
les langues qu'il accepte de voir, et Zend_Locale utilise
cette information pour la détection.
Mais il y a deux problèmes avec cette approche :
Le navigateur pourrait ne paramétrer aucune langue
L'utilisateur pourrait avoir manuellement paramétrer une locale qui n'existe pas
Dans ces deux cas Zend_Locale reviendra vers d'autres
mécanismes pour détecter la locale :
Quand une locale inexistante a été fournie, Zend_Locale
essaie de réduire la chaîne.
Quand, par exemple, fr_ZZ a été paramétré, il est
automatiquement réduit en fr. Dans ce cas
fr sera utilisé en tant que locale pour votre application.
Quand la locale ne peut pas non plus être reconnue même après réduction, la
locale de votre environnement (serveur Web) sera utilisée. La plupart des
environnements des hébergeurs utilise en en tant que
locale.
Quand la locale de l'environnement ne peut pas non plus être détectée,
Zend_Locale utilisera sa locale par défaut, qui
est par défaut en.
Pour de plus amples informations concernant la détection des locales, lisez le chapitre sur la déctection automatique
avec Zend_Locale.
Autodétection de la locale avec ajout de votre propre valeur par défaut
L'autodétection ci-dessus peut entraîner des problèmes quand la locale ne peut pas être
détectée et que vous souhaitez une autre locale par défaut que en.
Pour empêcher ceci, Zend_Application_Resource_Locale vous permet
de paramétrer votre propre locale qui sera utilisée si aucune locale ne peut être
détectée.
Autodétecter la locale et paramétrer une valeur par défaut
L'extrait suivant montre comment spécifier sa propre locale utilisée si le client
n'envoie pas lui-même une locale.
Forcer l'utilisation d'une locale
Parfois il peut être pratique de définir la locale qui devra être utilisée. Ceci peut
être fait en utilisant l'option force.
Dasn ce cas, cette locale seule sera utilisée et la détection automatique sera
désactivée.
Définition de la locale à utiliser
L'extrait suivant montre comment spécifier la locale à utiliser pour toute votre
application.