如何在HMVC Codeigniter中获取模块名称

时间:2019-05-14 07:16:19

标签: php codeigniter hmvc

我在两个模块中有两个名称相同的控制器,并且两个都工作正常。我也有一个检查访问权限的功能,它使用$this->router->fetch_class()
问题是$this->router->fetch_class()返回了控制器名称,它是相同的。但是我也需要模块名称。

模块的结构

/modules
    /product
        /controllers
            /product.php
            /options.php [1]
        /models
        /views
    /inventory
        /controllers
            /inventory.php
            /options.php [2]
        /models
        /views

和网址是:

[1]: ../product/options/function_name
[2]: ../inventory/options/function_name

那么有什么方法可以在不更改控制器名称的情况下检查访问权限?

1 个答案:

答案 0 :(得分:1)

就像@sintakonte所说,您可以使用uri library

使用segment可以获取网址的每个部分。

模块名称始终是域之后的第一部分。

$module_name = $this->uri->segment(1);