“American’s не имеют никакого прошлого и никакого будущего, они живут в расширенном подарке. ” Это описывает состояние вычислений. Мы живем в 80’s расширенный в 21-й век. Единственной вещью that’s измененный является размер. Alan Kay
Источник: Alan Kay: действительно ли Информатикой является Оксюморон?
Вы видели языковую библиотеку CodeIgniter ?
Языковой класс предоставляет функции для получения языковых файлов и строк текста для интернационализации.
В системной папке CodeIgniter вы найти один названный язык, содержащий множества языковых файлов. Вы можете создать свой собственные языковые файлы по мере необходимости, чтобы для отображения ошибок и других сообщений в другие языки.
Языковые файлы обычно хранятся в ваш системный / языковой каталог. Поочередно вы можете создать папку под названием language внутри папки вашего приложения и храните их там. CodeIgniter будет смотреть первым в вашем приложении / языковом каталоге. Если каталог не существует или указанный язык не находится там Вместо этого CI будет искать в вашем глобальном папка system / language.
В вашем случае ...
polish_lang.php
и english_lang.php
внутри application / language / polish
$ lang ['hello'] = "Witaj";
$ this-> lang-> load ('' polish_lang ',' polish ');
$ this-> lang-> line (' hello ');
Просто сохраните возвращаемое значение этой функции в переменной, чтобы вы могли используйте его в своем представлении. Повторите шаги для английского языка и всех других языков, которые вам нужны.
Also to add the language to the session, I would define some constants for each language, then make sure you have the session library autoloaded in config/autoload.php, or you load it whenever you need it. Add the users desired language to the session:
$this->session->set_userdata('language', ENGLISH);
Then you can grab it anytime like this:
$language = $this->session->userdata('language');
При управлении собственно файлами, вещи могут довольно легко рассинхронизироваться, если вы не проявляете особой бдительности. Поэтому мы запустили (бета) бесплатную службу под названием String , которая позволяет вам легко отслеживать свои языковые файлы и сотрудничать с переводчиками.
Вы можете либо импортировать существующие языковые файлы (в формате PHP array, PHP Define, ini, po или .strings) или создать свои собственные разделы с нуля и добавлять контент непосредственно через систему.
Строка полностью бесплатна, поэтому, пожалуйста, проверьте это и расскажите нам, что вы думаете.
На самом деле он тоже построен на Codeigniter! Ознакомьтесь с бета-версией на http://mygengo.com/string
вы можете создать такую функцию
function translateTo($language, $word) {
define('defaultLang','english');
if (isset($lang[$language][$word]) == FALSE)
return $lang[$language][$word];
else
return $lang[defaultLang][$word];
}