事件监听器监听到事件发生后会执行一些操作,Laravel使用观察者模式来实现这种监听机制
操作顺序:1.注册事件和监听器 -》 2.定义事件类 -》 3.定义监听类 -》 4.触发事件
1.注册事件和监听器
在EventServiceProvider中注册事件与监听器之间的映射关系:
然后在项目目录下运行artisan命令
此命令会在app/Events
目录下生成TextEvent.php
,在app/Listeners
目录下生成EventText.php
。
2.定义事件类
在TextEvent.php中:
3.定义监听类
在EventText.php中:
4.触发事件
在控制中:
以上注释部分是按照laravel文档写成的,生成的事件是接受一个Eloquent ORM对象,因此你需要生成一个模型,用来存放这个对象,而在触发事件中的数据类型也为对象类型
未注释部分是生成的事件是接受一个变量参数,因此不需要创建模型来存放。