0

下面的示例定义了一个 foo 类,它构造了一个 bar 类,并将其存储为一个 property $foo->bar。在 bar 类中,是否可以引用“false”父类并使用它的功能?

class bar
{
    public function test_false_parent()
    {
            //Is it possible to access foo->display() from here
        {unknown code}::display();
    }
}

class foo
{
    public $bar;

    public function __construct()
    {
        $this->bar = new bar;
    }

    public function display()
    {
        echo "in";
    }
}

$foo = new foo;

$foo->bar->test_false_parent();
//Equivalent to $foo->display();
4

1 回答 1

5

并非没有反向参考:

class bar
{
    protected $foo;

    public function __construct(foo $foo)
    {
        $this->foo = $foo;
    }

    public function test_false_parent()
    {
        $this->foo->display();
    }
}

class foo
{
    public $bar;

    public function __construct()
    {
        $this->bar = new bar($this);
    }

    public function display()
    {
        echo "in";
    }
}

$foo = new foo;

$foo->bar->test_false_parent();
于 2013-01-28T09:18:50.143 回答