OOP PHP类从一行调用function1() - > function2()

时间:2017-04-07 21:44:51

标签: php function class oop

我陷入了新的困境,一直在尝试使用它,我除了错误之外什么都没有,但是我决定要学习如何做到这一点,经过一些搜索看起来像它无法做到我想要它的说法。

在课堂上有两个或更多个函数(每个函数可以分别称为[sp]):

public function functionOne($some_var){
    some other code to be run;
}
public function functionTwo($some_other_var){
    some other code to be run after functionOne(), not called here;
}

来自来电者(型号):

$tClass = new TestClass();
$result = tClass->functionOne()->functionTwo();
echo $result;

这甚至可以从PHP?我知道它可以在像Laravel这样的框架中工作,这是我了解它的地方。这会很好......所以我问我做错了吗?或者它甚至可能,如果它在哪里我可以寻找更多,因为谷歌有关于这个主题的非常少的信息。

1 个答案:

答案 0 :(得分:3)

这称为fluent interface,一旦您的方法正在执行,它将始终有效

{
  "path": "/paper/CitationIDs/citation",
  "paper": {
    "type": "Paper",
    "id": [ 2118322263 ],
    "select": [
      "OriginalTitle"
    ]
  },
  "citation": {
    "return": {
      "type": "Paper"
    },
    "select": [
      "OriginalTitle"
    ]
  }
}

最有可能的做法是让所有的制定者流利。我倾向于说唯一不能流畅的方法就是你的吸气剂,否则,所有其他方法都非常适合流畅的界面。

return $this;

用法:

class calculator {
    private $result = 0;

    public multiplication($number) {
        $this->result *= $number;
        return $this;
    }

    public addition() {
        $this->result += $number;
        return $this;
    }

    /* ... */

    public getResult() {
        return $this->result;
    }
}