2014-03-03 178 views
0

我已經使用語言助手實現了多語言。我在下拉式變化中加載助手,意味着當用戶選擇任何語言,然後根據我的意願加載庫。 我的問題是,如果沒有語言文件中找到的話,就說明錯誤Codeigniter語言助手

Unable to load the requested language file: language/abc/abc_lang.php 

我想,如果沒有文件找到,那麼簡單的英語進行選擇。 所以我嘗試這個代碼,但得到同樣的錯誤

$language = $_POST['language']; 

if(($this->lang->load($language,$language)) == 1){ 
    $this->lang->load($language,$language); 
} 

else{ 
    $this->lang->load('english','english'); 
} 

任何人都可以告訴我怎麼解決這個問題。

+0

這可能是值得只是做一個簡單的'空($ _ POST [「語言」])'該值檢查並設置默認沒有設置if 1的值。你可以做一些像$ language =(!empty($ _ POST ['language']))? $ _POST ['language']:'default-language';'使閱讀更容易 – mic

回答

3

錯誤消息是由您嘗試在條件語句中加載不存在的語言文件觸發的。如果語言文件試圖加載它之前就存在,我建議你檢查:

if (file_exists(APPPATH."language/".$expectedLanguage."/".$expectedFile)) { 
    $this->lang->load($expectedFile, $expectedLanguage); 
} 
1

您必須確保您有多少選項可以在語言文件夾下創建的lang文件數量。那麼它會得到預期的lang文件,因爲你從下拉菜單改變而不顯示錯誤。