2012-01-08 64 views
1

我正在使用这个多语言插件http://codeigniter.com/wiki/CodeIgniter_2.1_internationalization_i18n以各种成语提供我的codeigniter网站。Codeigniter国际化图书馆如何保存用户的语言选择

我有回音链接这个PHP代码更改语言

echo anchor($this->lang->switch_uri('en'),'English | '); 
echo anchor($this->lang->switch_uri('es'),'Español | '); 
echo anchor($this->lang->switch_uri('ro'),'Română'); 

它确实没有问题的变化,但它不记得了。当我更换页面时,如果浏览器的语言没有定义,则从家到页面将返回到浏览器的语言或罗马尼亚语。

那么,会出现什么问题呢?我该怎么做才能记住这个选择?通过调用

$this->session->set_userdata('language', 'en');

查看关于使用session data 后来指的是用户的选择是什么的详细信息:

回答

1

你可以简单地通过使用会话改变选择

$language = $this->session->userdata('language ');

+0

我应该在哪里定义这些会话? – Alex 2012-01-08 14:58:38

+0

...在您的控制器中,只要看到提供的示例链接,您应该通过阅读CI的用户指南了解如何使用它们。你所有的信息都在那里,只需要通读它。 – Jakub 2012-01-08 16:03:29

+0

,这意味着我必须为我的每个控制器定义它。现在没关系,但后来会变成地狱...... pfff。 – Alex 2012-01-08 16:29:01