class A
{
protected $data;
public function __call($name, $arguments)
{
if ( method_exists($this, $name) ) {
call_user_func_array([$this, $name], $arguments);
}
return $this;
}
public function get()
{
return $this->data;
}
protected function setPreset()
{
// тут код манипуляции с $data, без return
}
}
$A = new A();
$data = $A->setPreset()
->get();
/** @return self */
(чтобы IDE не сходила с ума), что и вовсе убивает весь профит.