CodeIgniter:My_Lang 中的 get_instance

发布于 2024-12-06 09:50:04 字数 314 浏览 0 评论 0原文

我发现这个有用的国际化代码:

http://pastebin.com/SyKmPYTX

一切正常,除了我无法使用此类中的 CI 函数。

我想从 DB 设置 $languages 和 $special 变量。

但是当我使用 $CI =&获取实例();在实例函数中,它显示以下错误:

致命错误:在第 231 行的 /system/core/CodeIgniter.php 中找不到类“CI_Controller”

I found this useful Internationalization code:

http://pastebin.com/SyKmPYTX

everything works well except I am unable to use CI functions inside this class .

I want to set $languages and $special variable from DB .

but when I am using $CI =& get_instance(); in instance function its showing following error :

Fatal error: Class 'CI_Controller' not found in /system/core/CodeIgniter.php on line 231

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

凉月流沐 2024-12-13 09:50:04

语言类是在 CodeIgniter 实例存在之前加载的,这就是您收到错误的原因。

您可以使用 post_controller_constructor 挂钩来设置变量。

这是来自 CodeIgniter 论坛的一个帖子,其中有人尝试做类似的事情: http://codeigniter.com /forums/viewthread/108639/

The language class is loaded before the CodeIgniter instance exists, which is why you get the error.

You can use a post_controller_constructor hook to set your variables.

Here is a thread from the CodeIgniter forums where someone is tried to do something similar: http://codeigniter.com/forums/viewthread/108639/

深居我梦 2024-12-13 09:50:04

最简单的方法

在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

The easiest way

in 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;
}
}

i did this and is working fine :)) i also added default_uri in foreach.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文