我发现了这个有用的国际化代码:
一切正常,但我无法在此课程中使用CI函数。
我想从DB中设置$ languages和$ special变量。
但是当我使用$ CI =& get_instance();在实例中它显示以下错误:
致命错误:第231行的/system/core/CodeIgniter.php中找不到“CI_Controller”类
答案 0 :(得分:2)
语言类在CodeIgniter实例存在之前加载,这就是您收到错误的原因。
您可以使用post_controller_constructor挂钩来设置变量。
以下是来自CodeIgniter论坛的帖子,其中有人试图做类似的事情:http://codeigniter.com/forums/viewthread/108639/
答案 1 :(得分:0)
最简单的方法
在My_Lang.php中
var $languages = array();
function __construct()
{
parent::__construct();
require_once( BASEPATH .'database/DB'. EXT );
$db =& DB();
$query = $db->query( 'SELECT * FROM languages');
$result = $query->result();
foreach( $result as $row )
{
$this->languages[$row->short_name] = $row->full_name;
}
}
我这样做并且工作正常:))我还在foreach中添加了 default_uri 。