# Zend_Application_Resource_Locale

`Zend_Application_Resource_Locale` puede ser usado para configurar una localidad en el ámbito de una aplicación entera. Ésta localidad es usada en todas las clases y componentes que trabajen con localización o internacionalización. Por defecfto la localidad es guardada en una entrada en `Zend_Registry` baje la clave ' Zend_Locale'.

Hay básicamente tres casos de uso para el Locale Resource Plugin. Cada uno deberá ser usado dependiendo de la necesidad de la apliación.

## Autodetectando la localidad a usar

Sin especificar ninguna opción para `Zend_Application_Resource_Locale`, `Zend_Locale` detectará la localidad y la aplicación la usará automaticamente.

Ésta detección funciona porque el cliente envía el idioma deseado en su pedido HTTP. Normalmente el navegador envía los idiomas que desea ver y `Zend_Locale` usa esta información para la detección.

Pero hay dos problemas con este enfoque:

- El navegador podría estar configurado para no enviar el idioma

- El usuario podría haber configurado manualmente una localidad que no exista

En ambos casos `Zend_Locale` se apoyará en otros mecanismos para realizar la detección de la localidad:

- Cuando se configuró una localidad que no existe, `Zend_Locale` trata de degradar la cadena.

  Cuando, por ejemplo se configura en_ZZ, automáticamente será degradado a en. En este caso en será usado como la localidad de la aplicación.

- Cuando la localidad tampoco haya podido ser detectada incluso degradando la cadena, la localidad de su entorno (servidor web) será usada. La mayoría de los entornos disponibles en la web usan en como localidad.

- Cuando la localidad del sistema no se haya podido detectar, `Zend_Locale` usara su localidad por defecto, que está configurada como en.

Para más información acerda de la detección de localidad, vea este capitulo acerca de detección automática de Zend_Locale

## Autodetectando la localidad y agregando su mecanismo propio de reserva

La detección descrita más arriba podría llegar a provocar problemas cuando la localidad no haya podido ser detectada y se desea tener otra localidad como defecto que no sea en. Para prevenir esto, `Zend_Application_Resource_Locale` permite configurar su propia localidad, que será usada en el cado de que una localidad no se haya podido detectar.

### Autodetectar la loclidad configurando un mecanismo de reserva

El siguiente ejemplo muestra como configurar su propia localidad que será usada cuando el cliente no especifique ninguna localidad.

    ; Try to determine automatically first,
    ; if unsuccessful, use nl_NL as fallback.
    resources.locale.default = "nl_NL"

## Forzando una localidad en particular

Muchas veces es útil definir una única localidad para ser usada. Esto se puede conseguir usando la opción force.

En este caso, ésta única localidad será usada y detección automática será desactivada.

### Definiendo una única localidad a ser usada

El siguiente ejemplo muestra como usar una única localidad para la aplicación entera.

    ; No matter what, the nl_NL locale will be used.
    resources.locale.default = "nl_NL"
    resources.locale.force = true

## Configure cache template

When you have set no cache, `Zend_Locale` will set itself a cache with the file backend by default. But if you want to choose the backend or others options, you can use the name of a cache template or an instance of `Zend_Cache_Core`. For more informations look into .

### Defining a cache template to use

    ; Optionally you can also the cache template to use for caching:
    resources.locale.cache = "locale"