我已将application / config.php文件中的默认语言定义为$config['language'] = 'english' ;
但在某些情况下我想切换到其他语言,我尝试使用
$this->config->set_item('language', 'japanese');
在我的系统/语言文件夹中,我有英文和日文文件夹以及相关文件,但是当使用
切换控制器时$this->config->set_item('language', 'japanese');
没用。 那么如何在这些语言之间切换
答案 0 :(得分:2)
此处$this->config->set_item('language', $user_lang );
应调用控制器的构造函数或控制器的相关函数。然后就行了。
function __construct() {
parent::__construct();
//wanted to make this controller's language dynamic
$user_lang = $this->session->userdata('user_lang');
$this->config->set_item('language', $user_lang );
}
在我的函数中,我以这种方式使用验证
public function insert(){
$user_lang = $this->session->userdata('user_lang');
$this->lang->load('uitext',$user_lang);
// validate data
$this->load->library('form_validation');
$this->form_validation->set_rules('username', $this->lang->line('uitext_username'), 'required');
$this->form_validation->set_rules('email', $this->lang->line('uitext_email'), 'required|valid_email');
}
现在验证消息根据用户选择的语言(英语/日语)动态显示