Я попытался найти хорошее введение на chainable объектах ООП в PHP, но без любого хорошего результата все же.
Как что-то вроде этого может быть сделано?
$this->className->add('1','value');
$this->className->type('string');
$this->classname->doStuff();
Или даже: $this->className->add('1','value')->type('string')->doStuff();
Большое спасибо!
Ключ состоит в том, чтобы возвращать сам объект в каждом методе:
class Foo {
function add($arg1, $arg2) {
// …
return $this;
}
function type($arg1) {
// …
return $this;
}
function doStuff() {
// …
return $this;
}
}
Каждый метод, который возвращает сам объект, может использоваться в качестве промежуточного звена в цепочке методов. См. Статью Википедии о Цепочке методов для получения более подробной информации.
просто верните $ this в методах add () и type ():
function add() {
// other code
return $this;
}