如何在代码点火器中获取控制器方法参数



我实现了一个控制器来访问候选数据。

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给出控制器Class的名称,$this->router->method给出被调用函数的名称。

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

您可以使用URI类:

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

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

function getControllerParametersFromUri($uri_string){
$list = explode("/",$uri_string);
// skip controller and method names from 
// return array list 
return array_slice($list,2);
}
// call function by passing uri_string to get parameters list
print_r($this->getControllerParametersFromUri($this->uri->uri_string()));

@Sujit Agarwal$this->uri->segment(3(也适用,

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

相关内容

  • 没有找到相关文章

最新更新