多语言支持 CodeIgniter

Multilanguage Support CodeIgniter

我找到这个教程 (http://www.sitepoint.com/multi-language-support-in-codeigniter/) 来为我的网站添加多语言支持。我一步一步地跟着它。但是,在更改语言时,我收到以下错误代码:

致命错误:在第 9

行的 application/hooks/LanguageLoader.php 中调用成员函数 userdata() 为空

我的cookie里保存的语言明明收不到?我该如何解决?感谢您的帮助!

该错误表明具有函数 userdata() 的 class 未初始化 - NULL。在这种情况下,userdata() 是 Session class.

的一部分

我没有看到 class 在教程中的任何地方被加载所以尝试这个版本的 LangSwitch.php controller

<?php
class LangSwitch extends CI_Controller
{
  public function __construct() {
      parent::__construct();
      $this->load->library('session');
      $this->load->helper('url');
  }

  function switchLanguage($language = "") {
      $language = ($language != "") ? $language : "english";
      $this->session->set_userdata('site_lang', $language);
      redirect(base_url());
    }
}