0

我想显示在 codeigniter 中调用函数的模块名称。例如,考虑是否有 2 个模块 abc 和 xyz。两者都有控制器 abc 和 xyz,其代码段与此类似:

class Abc{
 function __construct() {
   parent::__construct();
 }}

class Xyz{
  function __construct() {
   parent::__construct();
  }
  function index() {
    $this->load->module('abc');
    echo $this->router->fetch_module();
  }
 }

现在,当我调用模块 xyz 的索引函数时,我得到的输出为“abc”,我希望显示该函数所在模块的名称,即 xyz。有什么解决办法吗?

4

1 回答 1

0

这样的事情怎么样?我之前没有使用过 CodeIgniter HMVC,如果我遗漏了一些明显的东西,我深表歉意。

class Abc{
 protected $rootModuleName;

 function __construct() {
   parent::__construct();
 }

 function setRootModuleName($name) {
    $this->rootModuleName = $name;
 }
}

class Xyz{
  function __construct() {
   parent::__construct();
  }
  function index() {
    $this->load->module('abc');
    $this->abc->setRootModuleName(__CLASS__); //or you could just pass the string 'Xyz'

    //This call would need to somehow make use of the $rootModuleName property
    echo $this->router->fetch_module();
  }
 }
于 2013-06-02T03:58:56.320 回答