【问题标题】:Codeigniter language change language in viewCodeigniter 语言更改视图中的语言
【发布时间】:2012-04-04 08:44:31
【问题描述】:

我的 Codeigniter 站点使用 CodeIgniter 的语言类及其对应的语言文件。 我的视图顶部有 3 个链接来更改语言。但是如何创建这些链接? 当我在 domain.com/nl/home 页面上时,我的语言应该是这样的

domain.com/en/home
domain.com/de/home
domein.com/fr/home

我还想为当前使用的语言添加一个 css 类。

【问题讨论】:

    标签: php codeigniter view


    【解决方案1】:

    您实际上并不需要该语言出现在网址中。如果站点变得更大,则很难维护。您可以使用类似 this is a controller 的东西(如果您在多个控制器中使用它,则可以使用 hook)

    /* BEGIN Language settings */
        $lang_array=array('english','spanish');
    
        if(!$this->session->userdata('language')){
               self::$current_language =  $this->config->item('language');
               $this->session->set_userdata('language', self::$current_language);
        }else{
               self::$current_language = $this->session->userdata('language');
        }
        // Css purpose
        $this->page_data['display_en'] = "";
        $this->page_data['display_sp'] = "";
        switch(self::$current_language){
            case 'english':$this->page_data['display_en'] = "display:none";break;
            case 'spanish':$this->page_data['display_sp'] = "display:none";break;
        }
       // Load language files
       $this->lang->load('profile',  self::$current_language);
       $this->lang->load('products',  self::$current_language);
    
       $this->page_data['page_lang'] = self::$current_language;
       // Abbreviated language name
       $this->page_data['lang'] = substr(self::$current_language,0,2);
    
       /* END Language settings */
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多