Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

CodeIgniter User Guide Version 2.1.0


Языковой класс (Language)

Языковой класс предоставляет функции для получения языковых файлов и строк текста для целей интернационализации (локализации вашего приложения).

В вашей системной директории CodeIgniter найдите поддиректорию language, которая содержит наборы языковых файлов. Вы можете создать собственные языковые файлы, для того, чтобы отображать сообщения об ошибках и прочие сообщения на других языках.

Языковые файлы обычно храняться в вашей директории system/language. Также вы можете создать поддиректорию language внутри вашей директории application и сохранять языковые файлы там. CodeIgniter сначала ищет языковые файлы в директории application/language. Если директория не существует, или указанный язык в ней не найден, CI будет искать в глобальной директории system/language.

Примечание:  Каждый язык должен быть сохранен в собственой директории. Например, файлы английского языка находятся в system/language/english

Создание языковых файлов

Название языковых файлов заканчивается на _lang.php. Например, давайте предположим, что вы хотите создать файл для хранения сообщений об ошибках. Вы можете назвать его error_lang.php

В этом файле вы можете поместить каждую строку текста в массив, называемый $lang, в соответствии с этим прототипом:

$lang['language_key'] = "Сообщение, которое будет показано";

Примечание: Хорошей практикой является использование общего префикса для всех сообщений в конкретном файле, чтобы предотвратить коллизии с одинаковыми именами в других файлах. Например, если вы создаете сообщения об ошибках, вы можете дать им префикс error_

$lang['error_email_missing'] = "Вы должны указать адрес электронной почты";
$lang['error_url_missing'] = "Вы должны указать URL";
$lang['error_username_missing'] = "Вы должны указать имя пользователя";

Загрузка языкового файла

Перед тем, как получать строки из конкретного файла, вы должны сперва его загрузить. Языковые файлы загружаются посредством следующего кода:

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

Где filename это имя файла (без расширения), и language это язык, содержащийся в нем (например english). Если второй параметр пропущен, используется язык по умолчанию, указанный в вашем application/config/config.php.

Получение строки текста

После того как языковой файл загружен, вы можете получать любые строки текста из него, используя эту функцию:

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

Где language_key это массив ключа, соответствующий строке, которую вы хотите показать.

Примечание: Эта функция просто возвращает строку. Она не выводит строку на экран (не передает ее в браузер).

Использование языковых строк в качестве меток полей

Эта функция является устаревшей, и перемещена в функцию lang() помощника языка.

Автозагрузка языков

Если вы обнаружите, что вам нужен конкретный язык глобально по всему приложению, вы можете попросить CodeIgniter загружать его автоматически при инициализации системы. Чтобы сделать это, откройте ваш application/config/autoload.php и добавьте язык (языки) в массив автозагрузки.

Поделиться


Переведено в компании Аринт.

Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter

Яндекс.Метрика