我想使用post_controller_constructor
挂钩记录我的应用收到的请求。
下面的钩子代码说明了我需要的东西:
public function log() {
$controller = $this->router->fetch_class();
$action = $this->router->fetch_method();
$post_params = $this->input->post();
$get_params = $this->input->get();
$url_params = ???;
...
$this->log_model->log($id_user, $controller, $action, time(), $post_params, $get_params, $url_params);
}
function __get($key){
$CI =& get_instance();
return $CI->$key;
}
对于我所看到的,解决方案必须与'URI'类以及从那里提取的段相关。 但我不能依赖这种方法,因为我有一些控制器比其他控件更深,如下例:
/folder/set_controllers/controller_a/action/(:any)
/folder/set_controllers/controller_a/action/7
$url_params
的值为array('7')
。 /folder/controller_b/action/(:any)/(:any)
/folder/controller_b/action/first_param/second_param/7
$url_params
的值为array('first_param', 'second_param')
。 /controller_c/action/(:any)
/controller_c/action/hello
$url_params
的值为array('hello')
。 我需要知道$url_params
有什么价值。
提前致谢。
答案 0 :(得分:3)
也许这个问题的答案可以帮助你How to get Controller, Action, URL informations with CodeIgniter它看起来你正在寻找相同的,或多或少。