您好,欢迎访问一九零五行业门户网

php框架Minor5事件(附代码)

5.1 事件event
minor的 event 类提供一个简单的观察者实现,允许您在应用程序里订阅与监听事件。
5.1.1 订阅事件
首先创建一个事件类:
<?phpnamespace app\event;use minor\event\event;class demoevent extends event{private$name;publicfunction __construct($name) {$this->name = $name;    }publicfunction setname($name)    {$this->name = $name;    }publicfunction getname()    {return$this->name;    }}
然后在配置文件中注册这个事件:
<?phpreturn$events = ['app\event\demoevent' =>    ['app\listener\demolistener' => 'handle',    ],];
5.1.2 触发事件
minor提供了一个事件管理类:minor\event\eventmanger,通过调用该类的静态方法fire:eventmanager::fire($event)就可以触发这个事件,例:
class foocontroller extends controller{publicfunction bar($productname)    {$event = new demoevent('demoevent');        eventmanager::fire($event);...    }}
5.2 监听器
当触发事件后事件管理器eventmanager就会通过配置文件去触发监听器的制定方法。在5.1.1配置文件中我们配置了demoevent的监听器为app\listener\demolistener的handle方法,可以看一下这个类的实现:
<?phpnamespace app\listener;use app\event\demoevent;use minor\event\listener;class demolistener extends listener{publicfunction handle(demoevent $event) {echo '[demolistener] handle the event:[' . $event->getname() .'] success!';    }}
以上就介绍了php框架之minor5事件(附代码)的内容,希望对php教程有兴趣的朋友有所帮助。
其它类似信息

推荐信息