CodeIgniter多语言数据库

时间:2012-04-16 14:46:17

标签: codeigniter

我有一个英文CodeIgniter网站。现在我想添加另一种语言(意大利语),只有数据库,而不是语言文件。我已经翻译了所有内容并将其放在数据库中,如name_en,name_it,content_en,content_it ,,,等表格字段中。我希望用户选择所需的语言并使用选择的语言在网站上导航。我想用会话这样做,根据语言制作查询来建模对应于数据库字段的函数;并以其他方式制作英语默认语言那么有谁能告诉我如何修改控制器,模型和视图中的代码? Thnx提前!

1 个答案:

答案 0 :(得分:0)

脚本太大了,不能在这里写,但我可以给出指导。

首先阅读会话类如何存储或检索lang

Session Class

其次,如果您在数据库中使用用户表,请为该语言创建一个新列。

在加载视图之前,将用户语言设置为会话,否则使用英语。

然后在您的视图中,您必须调用您的language_model,以检索相应的字符串。 请注意,直接从视图访问模型不是一个好习惯。 在这种情况下,您必须使用模块化扩展。

如果您不在乎只是使用

访问模型
$language = $this->session->userdata('language');
echo $this->language_model->fetch_string($language, 'string');