Здравствуйте! Сразу хочу извиниться за глупый вопрос)) Начал изучать ООП в php и наткнулся на такую запись $this->MsLoader->MsHelper->addStyle('abc');. Понимаю когда обращаются, например, так $this->MsLoader();. Первая запись означает что мы обращаемся ко всем методам подряд при этом возвращая значение и используя потом это значение в следующем методе или я совсем неправ?)
Это называется цепочкой вызовов. В каждом методе класса, который предполагает вызов дальнейших методов по цепочке, нужно возвращать объект этого класса, т.е. $this
Для примера:
Class Foo {
public $bar;
public $baz;
public function setBar() {
$this->bar = 'bar';
}
public function setBaz() {
$this->baz = 'baz';
}
}
Использовать его мы можем только таким образом:
$fooClass = new Foo();
$fooCLass->setBar();
$fooClass->setBaz();
Но если в каждом из этих сеттеров мы вернем $this, у нас получится следующее:
Class Foo {
public $bar;
public $baz;
public function setBar() {
$this->bar = 'bar';
return $this;
}
public function setBaz() {
$this->baz = 'baz';
return $this;
}
}
То можно будет сделать вот следующим образом:
$fooClass = (new Foo())->setBar()->setBaz();
Надеюсь, что объяснил понятно :)
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости