Laravel 5.1 事件

简介

Laravel事件提供了简单的观察者模式实现,允许你订阅和监听应用中的事件。事件类通常存放在app/Events目录,监听器存放在app/Listeners。
注意区别旧的laravel版本。下图为laravel5.1的升级说明。
这里写图片描述

注册事件和监听器

我们可以在app/Providers/目录下的EventServiceProvider中注册事件和监听器映射关系,其中的listen属性包含了事件(键)和对应监听器(值)数组。如果应用需要,你可以添加多个事件到该数组。例如,让我们添加StockChangeEvent事件和StockChangeListener:

/**
 * 事件监听器映射
 *
 * @var array
 */
protected $listen = [
    'Shark\Events\Product\StockChangeEvent' => [
        'Shark\Listeners\Product\StockChangeListener',
    ],
    'Shark\Events\Product\ProductAddEvent' => [
        'Shark\Listeners\Product\ProductListener',
        'Shark\Listeners\Product\ProductAddListener',
    ],
];

当然你也可以一个事件绑定多个监听器。
你也可以使用下面的方法注册事件和监听器:

Event::listen('Shark\Events\Product\StockChangeEvent', 'Shark\Listeners\Product\StockChangeListener');

你也可以使用下面的方法解除事件监听器的绑定

\Event::forget('Shark\Events\Product\StockChangeEvent');

定义事件和监听器

你可以使用artisan make:event 和artisan make:listener生成对应的文件,你也可以使用artisan event:generate 前提是你先在EventServiceProvider中注册好事件。

<?php

namespace Shark\Ev
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值