MicroPHP HMVC结构如下:application |- modules |- module1 |- controllers |- controllers.php |- models |- models.php |- views |- index.php |- footer.php |- ... |- module2 |- controllers |- controllers.php |- models |- models.php |- views |- index.php |- footer.php |- ... |- .... |- controllers |- ... |- models |- ... |- views |- ...MicroPHP的HMVC支持,HMVC对应配置项如下: /** * 存放HMVC模块的文件夹路径名称 */ $system['hmvc_folder'] = $system['application_folder'] . '/modules'; /** * 注册HMVC模块,这里填写模块名称关联数组,键是url中的模块别名,值是模块文件夹名称 */ $system['hmvc_modules'] = array('demo' => 'hmvc_demo'); MicroPHP HMVC模块结构说明: 每个模块文件夹里面必须有个名称为hmvc.php的模块配置文件。 模块文件夹结构可以参考示例模块:hmvc_demo,位于:application/modules/hmvc_demo 配置说明: 1.模块配置文件和入口文件里面的主配置一样。 2.如果HMVC模块有自己的配置,模块就可以覆盖主配置。 3.模块配置里面已经配置了一些必要的配置项目。 4.如果HMVC模块需要其它不同于主配置的配置,那么取消配置前面的注释,然后配置即可。 提醒: 1.$system['my_loader'],$system['hmvc_folder'],$system['hmvc_modules']这三个配置项在HMVC配置中无效。 2.HMVC模块共享主配置的:模型,视图,helper和类库。当有重名时,优先使用HMVC模块的。 如何访问hvmc模块? 访问hvmc模块很简单,只要在url控制器前面加上“模块名称/”即可,其它规则和以前框架规则一样。 比如: 1.http://127.0.0.1/?demo/,访问的就是hmvc_demo模块默认的控制器和方法。 2.http://127.0.0.1/?demo/home.index,访问的就是hmvc_demo模块home控制器doIndex()方法。 3.http://127.0.0.1/?demo/&a=b,访问的就是hmvc_demo模块默认的控制器和方法,同时GET方式传递了一个a变量。 4.http://127.0.0.1/?demo/home.index&a=b,访问的就是hmvc_demo模块home控制器doIndex()方法,同时GET方式传递了一个a变量。 插件模式下的hmvc: a.MpLoader::instance($renew = null, $hmvc_module_floder = null) b.MpController::instance($classname_path = null, $hmvc_module_floder = NULL) c.MpModel::instance($classname_path = null, $hmvc_module_floder = NULL) 比如: 1.$hmvc_demo_loader=MpLoader::instance(true,'hmvc_demo');实例化模块hmvc_demo的一个loader实例 2.$hmvc_demo_home=MpController::instance('home','hmvc_demo');实例化模块hmvc_demo的一个home控制器对象 3.$hmvc_demo_model=MpModel::instance('HmvcModel','hmvc_demo');实例化模块hmvc_demo的一个HmvcModel模型对象
Powered By 狂奔的蜗牛 | 历史版本 | 源代码 | 快速入门 | MicroPHP@开源中国
源代码许可证 Apache License v2.0
MicroPHP官方QQ交流群 : 42807575 , 有问题欢迎加群交流