Laravel 8 定义事件

2021-07-14 14:38 更新

事件类是一个保存与事件相关信息的容器。例如,假设我们生成的 OrderShipped 事件接收一个 Eloquent ORM 对象:



namespace App\Events;

use App\Models\Order;

use Illuminate\Broadcasting\InteractsWithSockets;

use Illuminate\Foundation\Events\Dispatchable;

use Illuminate\Queue\SerializesModels;

class OrderShipped

{

    use Dispatchable, InteractsWithSockets, SerializesModels;

    public $order;

    /**

     * 创建一个事件实例

     *

     * @param  \App\Models\Order  $order

     * @return void

     */

    public function __construct(Order $order)

    {

        $this->order = $order;

    }

} 

如你所见,这个事件类中没有包含其它逻辑。它只是一个已购买的 Order 的实例的容器。如果使用 PHP 的 serialize 函数序列化事件对象,事件使用的 SerializesModels trait 将会优雅地序列化任何 Eloquent 模型。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号