Module(空模块空操作前置后置操作)

module是一个类
名称:ModuleAction extends Action{} 首字母必须大写
同时,在请求Url的时候,也需要严格区分大小写
在APP_DEBUG,window下开发,也会强制区别大小写

ps:
//空模块
//当系统找不到指定的模块名称的时候,
//首先判断__hack_module()函数存不存在
//如果该函数存在,则利用该函数返回一个的对象(返回值必须为对象,否则return)

//如果__hack_module()不存在
//系统调用空模块 $module=A('Empty'); //大A方法 等同$module=new EmptyAction();
//如 http://localhost/orange/index.php/Aaaa/index
//没有Aaaa这个模块(类) 就执行EmptyAction下的index方法
class EmptyAction extends Action{
  public function index(){
    echo 111;

  }
}

根据地址栏的参数分析出要调用的模块和方法

Module的空操作
当一个对象,调用一个不存在的方法时,
有一个魔术方法__call将会被调用
该方法将会判断有没有_empty()方法存在,如果有,则调用

//例  http://localhost/orange/index.php/Index/aaa

class IndexAction extends Action{

  public function _empty(){

  }

}

//Index这个模块(类) 下没有aaa的方法,_empty()方法存在,即被调用

 

前置和后置的操作
是指,某个方法调用时,会先调用其前置操作,最后调用后置方法
APP.class.php 130行左右
当调用xxx方法时,如果存在_before_xxx方法,就先调用_before_xxx
调用完xxx方法时,如果存在_after_xxx方法是,就调用_after_xxx

ps:怎么样实现万能操作呢?(就是空模块空操作,)先写一个EmptyAction类,在这类下写一个_empty()方法

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值