CodeIgniter User Guide Version 1.6.1


Clase Idioma

La Clase Idioma proporciona funciones para recuperar los archivos de idioma y las líneas de texto a los efectos de la internacionalización.

En su carpeta "system" de CodeIgniter encontrará una llamada language que contendrá conjuntos de archivos de idiomas. Usted puede crear su propio archivo de idiomas cuando sea necesario, a fin de mostrar mensajes de error y otros mensajes en otros idiomas.

Los archivos de idioma estan comúnmente almacenados en su directorio system/language. Alternativamente puede crear una carpeta llamada language dentro de su carpeta application y almacenarlos en ella. CodeIgniter verá primero en su directorio system/application/language. Si el directorio no existe o el idioma especificado no está ubicado allí, CI mirará en su carpeta global system/language.

Nota:  Cada idioma debe ser almacenado en su propia carpeta. Por ejemplo, los archivos en Inglés estan localizados en: system/language/english

Creando Archivos de Idioma

Los archivos de Idioma deben ser nombrados con _lang.php como extensión del archivo. Por ejemplo, supongamos que quiere crear un archivo que contiene los mensajes de error. Ud. puede nombrarlo asi: error_lang.php

En el archivo asignará cada linea de texto a un arreglo llamado $lang con este prototipo:

$lang['language_key'] = "The actual message to be shown";

Nota: Es una buena práctica utilizar un prefijo común para todos los mensajes de un determinado archivo para evitar colisiones con elementos llamados en forma similar en otros archivos. Por ejemplo, si está creando mensajes de error puede poner un prefijo en ellos con error_

$lang['error_email_missing'] = "You must submit an email address";
$lang['error_url_missing'] = "You must submit a URL";
$lang['error_username_missing'] = "You must submit a username";

Cargando un Archivo de Idioma

Con el fin de obtener una línea de un archivo particular Ud. debe cargar el archivo primero. La Carga de un archivo de idioma se hace con el siguiente código:

$this->lang->load('filename', 'language');

Donde filename es el nombre del archivo que desea cargar (sin la extensión del archivo), y language es el idioma establecido que la contenga (por ejemplo, english). Si el segundo parámetro falta, el idioma por defecto establecido en su archivo application/config/config.php será usado.

Obtención de una línea de texto

Una vez que su archivo de idioma deseado carga, usted puede acceder a cualquier línea de texto utilizando esta función:

$this->lang->line('language_key');

Donde language_key Es el arreglo clave correspondiente a la línea que desea mostrar.

Nota: Esta función simplemente retorna la linea. No la imprime por usted.

Auto-cargando Idiomas

Si Ud. encuentra que necesita un idioma particular globalmente en toda su aplicación, puede decirle a CodeIgniter que lo auto-cargue durante la inicialización del sistema auto-load. Esto se hace abriendo el archivo application/config/autoload.php y agregando el/los lenguaje/s al arreglo de autocarga.