Это зависит от ваших требований, но обычно это можно сделать с помощью файлов языковых переводов (общее расширение .po или .mo), используемых проектом gettext GNU и поддерживаемых на разных платформах.По сути, то, что вы храните в базе данных, является ключом, и в зависимости от того, какой язык вы отображаете, вы выбираете правильное значение на основе этого ключа.
Использование файлов .po также означает, что вы можете использовать языковой файлредактор типа http://www.poedit.net/
Существует несколько реализаций gettext для большинства платформ / языков.Вот ссылка для php: http://php.net/manual/en/book.gettext.php
или если вы используете Zend Framework http://framework.zend.com/manual/en/zend.translate.adapter.html
В общем, просто сохраните msgid и используйте gettext для получения правильного значенияв зависимости от выбранного языка.
Пример: - создать каталог 'locale' и подкаталоги для двухбуквенного кода языка
locale / en locale / fr
исоздайте файл для каждой страницы, которую вы хотите перевести locale / en / default.po locale / fr / default.po
, в английский файл вы создаете определения строк, используя стандартный синтаксис
msgid "site-main-welcome"
msgstr "Hello! Welcome to our site"
во французском почтовом файле
msgid "site-main-welcome"
msgstr "Salut! bienvenue à notre website"