aliskin
Дата: 22.07.2017 00:03:56
По cookie или по иному (сам юзер выбирает значение переменной) я получаю значение языковой переменной.
Для вывода конкретноЛокализованного текста элементов управления (или всего текста страницы) нужно...
Что и как нужно сделать: Если для англ яз нужно вывести текст кнопки "SEND", а для русс яз "ОТПРАВИТЬ"?
Хранить для каждого языка отдельную кнопку (тем более отдельную страницу) - это плохой вариант(?).
Хранить переводы одного слова ОТПРАВИТЬ / SEND в отдельных файлах, чтобы делать readfile или include - как-то не оно(?) (много файлов).
Хранить переводы интерфейса в БД? - незнаю. Грузить бд локадизацией - тож как-то не годится.
Хранить переводы в ОДНОМ файле (один файл на один язык)? - как тогда считывать конкретные строки из файла. Ну читать из файла можно с верными смещениями, но это заморочка для меня и нагрузка на фс сервера.
Как правильно это сделать?
VSVLAD
Дата: 23.07.2017 22:20:00
Ассоциативный массив в который загружаются строки того языка, который мы захотим. В коде для вывода локализованной строки выводим фразу с учётом языка <? print getLanguage["ButtonSendText"]; ?>. Как наполняется массив - это уже тонкости реализации, либо из файла, либо из БД и т.д. главное есть класс-прослойка или просто функция, которая и будет отдавать нужный нам текст.