How to get current controller or method name in Codeigniter ?

By Hardik Savani | June 8, 2017 | | 45549 Viewer | Category : PHP Codeigniter


In this post, i am going to share with you how to fetch current controller or method name in codeigniter application.

We may sometime need to get controller name for logic at that time we require to get current controller name from route. Same way if you require to get current method name then you can do it simply by using $this->route variable of codeigniter.

In this example we will use two method of $this->router variable for getting controller name and method name as listed bellow:

fetch_class()

fetch_method()

We can basically use this way:

$controller = $this->router->fetch_class();

$method = $this->router->fetch_method();

Now i am going to give example with controller as listed bellow example:

Example

<?php

defined('BASEPATH') OR exit('No direct script access allowed');


class Welcome extends CI_Controller {


/**

* Index Page for this controller.

*

* Maps to the following URL

* http://example.com/index.php/welcome

* - or -

* http://example.com/index.php/welcome/index

* - or -

* Since this controller is set as the default controller in

* config/routes.php, it's displayed at http://example.com/

*

* So any other public methods not prefixed with an underscore will

* map to /index.php/welcome/

* @see https://codeigniter.com/user_guide/general/urls.html

*/

public function index()

{

$controller = $this->router->fetch_class();

$method = $this->router->fetch_method();

print_r($controller);

print_r($method);

exit;

}

}

I hope it can help you...



Hardik Savani
My name is Hardik Savani. I'm a full-stack developer, entrepreneur and owner of Aatman Infotech. I live in India and I love to write tutorials and tips that can help to other artisan. I am a big fan of PHP, Javascript, JQuery, Laravel, Codeigniter, VueJS, AngularJS and Bootstrap from the early stage.
Follow Me: Github Twitter
***Do you want me hire for your Project Work? Then Contact US.


We are Recommending you: