在同一个类中的函数中调用函数内的一个类的函数

时间:2012-05-29 06:32:12

标签: php class function codeigniter call

从函数abc();
1。如何调用'A类中的函数'? ($ this-> a();返回错误)?
2.如何访问公共变量$ bbb?

( - 我知道结构不好,但'require_once'部分是动态的等等......)

    class AAA extends CI_Controller 
    {
        public $bbb;

    function ccc ()
    {
    }

    function index ()
    {
        require_once '1.php';
    }
    }

//在1.php中

function abc ()
{
 // how do i call method a of Class A?
 $this->ccc(); // returns error - Using $this when not in object context in ...
$this->bbb; //
}

abc(); // etc etc

2 个答案:

答案 0 :(得分:2)

您正在尝试使用require()执行某项操作,但这项操作并非如此,并且不起作用。

  

但是,包含文件中定义的所有函数和类都具有全局范围。

http://us.php.net/manual/en/function.include.php也适用于require()

abc()在全局范围内定义,因此没有使用$this所需的对象上下文。

答案 1 :(得分:1)

如琥珀提到的require在这里不会有帮助。你能不能把参考传递给函数?

function abc (&$ref)
{
  $ref->ccc();
  $ref->bbb;
}

要求它在课外通常是蚂蚁然后只需要打电话

function index ()
{
  abc($this);
}

不确定它会起作用,但值得一试,我相信