限时 5折! 详情

yii2源码分析-事件

4165 0 0

上一节,我们讲述了 Component 关于“属性” 和 ServiceLocator 的实现。

今天我们来看看事件的实现机制。

从【yii2实战系列中对事件的理解】,我们可以把事件分别三种

  1. 实例事件
  2. 类级别事件
  3. 全局事件

下面我们将依次对这三种事件的实现进行分析。

前两天看到有同学还在【yii2实战系列】的评论区留言 “事件的触发跟方法调用有什么区别”,十九大刚刚闭幕,这认识可不够深刻哈。

有些同学喜欢抱怨,事件不会用,源码更是看不懂啊看不懂。

看不懂只能说明,我这篇文章写的晚了。

其实,按照我们先前对依赖注入容器或者服务定位容器的实现分析,事件的实现逻辑你应该能猜个十有八九,无非就是先通过一个方法对某个事件注册相关的回调函数,触发事件的时候,再通过事件ID找到注册的事件进行回调,其实就是这么简单。

实例事件

继续阅读

还有90%的精彩内容,购买继续阅读