【发布时间】:2016-12-17 07:17:49
【问题描述】:
我想知道一些 PHP 框架使用的方法如下
Class::function()->function($parm)->function($parm);
以 Laravel 为例
DB::table('users')->where('name', 'John')->value('email');
这些方法在内部是如何工作的?
我怎样才能建立自己的这种方法?
请帮帮我。
【问题讨论】:
我想知道一些 PHP 框架使用的方法如下
Class::function()->function($parm)->function($parm);
以 Laravel 为例
DB::table('users')->where('name', 'John')->value('email');
这些方法在内部是如何工作的?
我怎样才能建立自己的这种方法?
请帮帮我。
【问题讨论】:
Foo::function()->function Two() 它是对一个返回新实例的公共函数的静态调用。
Class foo{
Public static function (){
Return new class bar();
}
Class bar{
Public function functionTwo(){
//Some code
}
请记住,这并不总是好的,因为它违反了 demeter 法则https://en.m.wikipedia.org/wiki/Law_of_Demeter
【讨论】: