我试图在"后控制器构造器"钩子中获得被调用控制器的名称:
<?php
function authenticate() {
$CI =& get_instance();
$controller = $CI->router->class;
}
但是我得到这个错误信息:
遇到PHP错误
严重性:注意
消息:尝试获取非对象的属性
文件名:钩/post_controller_constructor.php
行号:5
回溯:
File:/…/codeigniter - 3.0 rc3/应用程序//post_controller_constructor.php hook线:5功能:_error_handler
File:/…/index . php线:292功能:require_once
知道为什么吗?
<?php
function authenticate()
{
$CI = &get_instance();
$controller = $CI->router->fetch_class(); //Controller name
$method = $CI->router->fetch_method(); //Method name
}
我不确定。但你可以这样试试。Fetch_class用于获取类名,method用于获取方法名。
$this->router->fetch_class();
$this->router->fetch_method();