url = new Url(); $this->session = new Session(); $this->redirect = new Redirect($this->session); $this->request = new Request($params); } // final public function __get($name) { return $this->getView()->$name; } final public function __set($name, $value) { $this->getView()->$name = $value; } final public function getView(): View { if ($this->_view === null) { $this->_view = new View(); $this->_view->url = $this->url; $this->_view->session = $this->session; $this->_view->redirect = $this->redirect; $this->_view->request = $this->request; } return $this->_view; } public function render(string $path) { return $this->getView()->render($path); } } //Class