建议的MySQL国际化方法?

时间:2010-06-14 20:14:37

标签: mysql internationalization kohana

我有一个关于Kohana的网站,我打算让它有多种语言。
现在我知道了使用i18n文件夹和每个语言文件夹内的方式 有一些strings.php文件..
但我想要一种动态的方式(在DB上),所以我可以随时改变值 通过网站。

是否存在通常用于多语言内容的常用表模式?

1 个答案:

答案 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')