# Zend_Application_Resource_Locale

`Zend_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. Par défaut la locale est sauvegardée dans une entrée de `Zend_Registry` avec la clé 'Zend_Locale'.

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.

    ; tentative de détection automatique,
    ; si impossible alors on prend fr_FR.
    resources.locale.default = "fr_FR"

## 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.

Dans 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.

    ; dans tous les cas, fr_FR doit être utilisé
    resources.locale.default = "fr_FR"
    resources.locale.force = true

## Configurer le modèle de cache

Lorsque vous ne définissez pas de cache, `Zend_Locale` définit son propre cache avec le backend fichier par défaut. Cependant, vous pouvez utiliser un nom de modèle du gestionnaire de cache, ou une instance de `Zend_Cache_Core`, pour choisir le backend, ou d'autres options. Pour plus d'informations, veuillez vous reporter à .

### Définition du cache avec un modèle du gestionnaire

    ; Optionnellement, on peut utiliser un modèle du gestionnaire de cache :
    resources.locale.cache = "locale"