dongxinm279890 2012-09-20 18:37
浏览 72
已采纳

在codeigniter中使用自定义库中的自定义库?

the problem I am having is that I am trying to use a custom library inside of another custom library I made within codeigniter. They are both in the libraries folder and CodeIgniter tells me that I have to first load the instance of CI which I did...

class MyClass {

public function __construct()
{
    $CI =& get_instance();
    $CI->load->library("OtherClass");
}

Now inside of a function within this class I am trying to use my other library..

public function my_function()
{
      $CI->otherclass->function_inside_this_class();
}

The error I am getting is

A PHP Error was encountered
Severity: Notice
Message: Undefined variable: CI
Filename: libraries/MyClass.php
Line Number: 20

Is there something I am missing in terms of declaring the codeigniter instance itself?

Thank you!

  • 写回答

2条回答 默认 最新

  • douzhun4124 2012-09-20 18:41
    关注

    Your CI variable scope is limited to the constructor function at the moment. You can make a class variable that has class scope and will be accessible via $this->variable in all functions within that class.

    class MyClass {
    
    private $_CI; // make a private class variable here. 
    
    public function __construct()
    {
        $this->_CI =& get_instance();
        $this->_CI->load->library("OtherClass");
    }
    public function my_function()
    {
        $this->_CI->otherclass->function_inside_this_class();
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥60 Python如何后台操作Vmwake虚拟机键鼠
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容