Get controller and method in view - Printable Version +- CodeIgniter Forums (https://forum.codeigniter.com) +-- Forum: CodeIgniter 4 (https://forum.codeigniter.com/forumdisplay.php?fid=28) +--- Forum: CodeIgniter 4 Support (https://forum.codeigniter.com/forumdisplay.php?fid=30) +--- Thread: Get controller and method in view (/showthread.php?tid=73525) |
Get controller and method in view - tony.a - 05-03-2019 Hy there . How to get current controller and method from view file ? RE: Get controller and method in view - John_Betong - 05-04-2019 The only way I managed to echo the Controller name in the View file was to set the following in the controller: // controller $data['controllername'] = 'Home'; // has to be hardcoded // View echo $controllername; RE: Get controller and method in view - tony.a - 05-04-2019 Using Services::router ? /** * Returns the name of the matched controller. * * @return mixed */ public function controllerName() { return $this->translateURIDashes ? str_replace('-', '_', $this->controller) : $this->controller; } //-------------------------------------------------------------------- /** * Returns the name of the method to run in the * chosen container. * * @return mixed */ public function methodName(): string { return $this->translateURIDashes ? str_replace('-', '_', $this->method) : $this->method; } From codeigniter class but how to get protected controller and action from Codeigniter class ? $this->router = Services::router($routes); $path = $this->determinePath(); $this->benchmark->stop('bootstrap'); $this->benchmark->start('routing'); ob_start(); $this->controller = $this->router->handle($path); $this->method = $this->router->methodName(); // If a {locale} segment was matched in the final route, // then we need to set the correct locale on our Request. if ($this->router->hasLocale()) { $this->request->setLocale($this->router->getLocale()); } $this->benchmark->stop('routing'); return $this->router->getFilter(); } |