我有一个关于Kohana的网站,我打算让它有多种语言。
现在我知道了使用i18n文件夹和每个语言文件夹内的方式
有一些strings.php文件..
但我想要一种动态的方式(在DB上),所以我可以随时改变值
通过网站。
是否存在通常用于多语言内容的常用表模式?
答案 0 :(得分:2)
好吧,你可以模仿数据库中的“资源”文件,
您可以将表作为字符串的目录,使用两列,例如
Lang_Constants
ID, Constant_Name
1, HELLO_STRING
另一张支持语言的表:
Languages
ID, Name
1, English
2, Spanish
和包含实际数据的表格:
ID, Language, Constant, Value
1, 1, 1, "Hello world!"
10, 2, 1, "Hola mundo!"
您可以执行以下查询:
SELECT Value from Lang_Constant_values where
Language = (Select ID from Languages where Name = 'English')
and
Constant = (Select ID from Lang_Constants where Constant_Name = 'HELLO_STRING')