2
例如,我見過有這樣的功能,第三方應用程序:如何在PHP中創建嵌套方法?
$db->select('columns')->from('table')->where('condition');
這只是一個例子。你如何創建這樣的方法?
例如,我見過有這樣的功能,第三方應用程序:如何在PHP中創建嵌套方法?
$db->select('columns')->from('table')->where('condition');
這只是一個例子。你如何創建這樣的方法?
要做到這一點,每種方法都應該返回$this
,這是包含這些方法的類的一個實例。
class MyClass {
public function select($x){
// do something
return $this;
}
public function from($x){
// do something
return $this;
}
public function where($x){
// do something
return $this;
}
}
這些方法裏面,你一般執行某種修改對象的狀態。
在你的例子中,這些方法只是返回對象。因此,$db->select()
返回一個方法爲from()
的對象,該方法使用方法where()
返回對象。