gpt4 book ai didi

php - 如何在php中用一行调用两个方法?

转载 作者:行者123 更新时间:2023-12-03 02:58:19 25 4
gpt4 key购买 nike

我在 Laravel 中看到在单行中调用多个方法,例如:

DB::get('test')->toJson();

我有一个很酷的类和该类中的 View 方法。

$this->call->view('welcome')->anotherMethod();

我还想调用另一个方法吗?我应该在哪里创建该方法?

最佳答案

DB::get() 似乎是一个返回对象的方法,您可以在其中调用其他函数(我认为是数据库查询的结果对象)。如果您想在一行中对一个对象调用多个函数,则必须在函数中返回 $this,例如:

class View {
public static function factory {
// The question is: How useful is this factory function. In fact: useless in
// the current state, but it can be extended in any way
return new self;
}

public function one() {
// do something
return $this;
}

public function two() {
// do something
return $this;
}
}

然后你可以这样做:

$class = new View();
$class->one()->two();
// it's also possible to use the `factory` function
// you should think about, how useful this approach is in your application
$class = View::factory()->one()->two();

这就是你如何在 php 中做到这一点,如果 laravel 有一些帮助器,我不能说:)

关于php - 如何在php中用一行调用两个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31585117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com