2010-06-22 74 views
1

我試圖使用codeigniter實時更改一個webapp的語言。在運行時更改語言

我按照網上的文檔,所有的TRADUCTIONS創建LANGUAGE2的文件夾,但是當我做:

$this->config->set_item('language', 'portuguese'); 

它不改變郎,它工作的唯一方法是改變配置文件例如:

$config['language'] = "english"; 

但我需要的是實時更改不改變框架的配置。

問候,
佩德羅

+0

你什麼時候調用'$ this-> config-> set_item('language','portuguese');'?在控制器構造函數或更高版本中? – Pete 2010-06-22 16:03:55

+0

在控制器中,謝謝 – Pedro 2010-06-22 16:35:37

+0

是的,但是*在控制器中?在構造函數或方法中? – Pete 2010-06-22 17:07:44

回答

1

使用鉤子,而不是類的構造函數,甚至是控制器擴展到MY_Controller並在它的構造函數中調用。

2

您可以使用此代碼。 (此例爲ion_auth)

$this->config->set_item('language', 'portuguese'); 
$this->lang->is_loaded = array(); 
$this->lang->load('ion_auth', 'portuguese'); 

此代碼在約束器中使用。

$ this-> lang-> is_loaded = array();
頂行空白語言。