HMVC（Hierarchical-Model-View-Controller），也可以叫做 LayeredMVC。顾名思义，就是按等级划分的 MVC 模式，简单的解释就是把MVC又细分成了多个子 MVC，每个模块就分成一个 MVC。使用 HMVC 的好处就是可以降低各个功能模块之间的耦合性，提高代码复用性，使得每个功能都可以独立出来，每个模块都有自己的 MVC 结构，这就有点像 ActiveX 控件，每个控件都有自己的行为，控件之间互不影响。
CodeIgniter 结构示意