如何在Codeigniter中获取控制器方法参数?

时间:2018-07-28 11:21:31

标签: php codeigniter

我已经实现了一个控制器,可以访问候选人的数据。

class List_Controller extends CI_Controller {
     public function __construct()
     {
         parent::__construct();
         $data[]=array();

         /*
         Here I want to get value of $area parameter, to save into logs
        */
         $userId=$this->session->userdata('userId'); 
         // save logs 
         $this->UrlAccessHistory->save($this->router->class,$this->router->method,$userId,"Web Application");

     }

    public function fetchList($area=null){
        // fetch list of records from specified area 
    }
}

$this->router->className给出控制器类的名称,而$this->router->method给出所调用函数的名称。

请帮助获取构造函数中位置的参数列表(请参阅代码中的注释),以便我可以将其存储在日志中。

2 个答案:

答案 0 :(得分:0)

您可以使用URI Class

$this->uri->segment(n);

答案 1 :(得分:0)

我在控制器内部添加了一个函数,以获取控制器参数列表

shouldComponentUpdate()

@Sujit Agarwal $ this-> uri-> segment(3)也有效,

但是如果我们需要所有参数的列表,那么我们可能会爆炸uri_string