【问题标题】:Methods as objects - How / when [duplicate]作为对象的方法-如何/何时[重复]
【发布时间】:2012-06-02 04:44:06
【问题描述】:

可能重复:
PHP method chaining?

在我使用过的很多 API 中,我都看到过这样的事情:

$object->method()->anotherMethod();

从我读过的关于 OOP 的教程中,这就是类的编写方式,

<?php
class myClass {
    public method() {
       // do something
    }
}
?>

什么时候应该使用它,如何使用?抱歉,我是 OOP 新手。

【问题讨论】:

标签: php oop class methods


【解决方案1】:

这称为Method Call Chaining。关于何时应该使用它并没有硬性规定,但我使用的一般规则是,当有一系列对象方法经常一个接一个地调用时,方法链接才有意义,例如初始化函数。

【讨论】:

    【解决方案2】:

    如果您的方法返回 $this,您将能够使用上述样式 ($object-&gt;method()-&gt;anotherMethod())。这只能在您的方法不期望返回其他内容的情况下完成,例如一个名为getSomething() 的方法预计会返回Something,但如果您有一个没有相关值要返回的方法,您可以只返回$this,允许方法调用链。

    【讨论】:

      猜你喜欢
      • 2017-08-22
      • 1970-01-01
      • 2019-07-14
      • 2014-08-08
      • 2013-01-17
      • 2016-04-20
      • 1970-01-01
      • 2018-08-02
      • 2010-12-13
      相关资源
      最近更新 更多