codeigniter在post控制器构造函数钩子中获取当前控制器

时间:2015-10-06 10:16:52

标签: php codeigniter-3

我试图在" post控制器构造函数中获取被调用控制器的名称"钩:

<?php
function authenticate() {
    $CI =& get_instance();
    $controller = $CI->router->class;
}

但我收到此错误消息:

  

遇到PHP错误

     

严重性:注意

     

消息:尝试获取非对象的属性

     

文件名:hooks / post_controller_constructor.php

     

行号:5

     

回溯:

     

文件:/ ... /CodeIgniter-3.0rc3/application/hooks/post_controller_constructor.php   行:5   功能:_error_handler

     

文件:/ ... /index.php   行:292   功能:require_once

任何想法为什么?

2 个答案:

答案 0 :(得分:0)

我不确定这一点。但你可以这样试试。 fetch_class用于获取类名,方法用于获取方法名。

$this->router->fetch_class(); 
$this->router->fetch_method();

答案 1 :(得分:0)

<?php
      function authenticate() 
      {
         $CI = &get_instance();
         $controller = $CI->router->fetch_class();  //Controller name
         $method     = $CI->router->fetch_method();  //Method name
      }