返回类的实例(是“类php的属性”)

时间:2012-06-11 06:42:40

标签: php oop class return

你好我是OOP的新手我只是想问一下如何在不给每个函数返回类的情况下自动返回类的实例?  这是我的代码:

class myclass
{
    function myfinalOUtput()
    { 
        //blahblah
        return new myclass(); 
    }

    function get()
    { 
        //blahblah
        return new myclass();
    }

    function set()
    { 
        //blahblah
        return new myclass();
    }
} 

我想要类似的东西:

class myclass
{
    function myfinalOUtput()
    {}

    function get()
    {}

    function set()
    {}
} 

所以我能做到:

$class = new myclass();
$class->get()->set()->myfinalOUtput->();

3 个答案:

答案 0 :(得分:2)

return $this;

代替return new myclass(); ...代替所需的一切,它只是将物体传回。

答案 1 :(得分:1)

它被称为Fluent interfacephp的实现。

答案 2 :(得分:0)

您要找的是$this变量:

class myclass
{
    function myfinalOUtput()
    { 
        //blahblah
        return $this; 
    }

    function get()
    { 
        //blahblah
        return $this;
    }

    function set()
    { 
        //blahblah
        return $this;
    }
}

这将在方法结束时返回实例,以便您可以调用其他方法:

$class = new myclass();
$class->get()->set()->myFinalOutput();