web/docs/v3/others/event.md
在支付过程中,可能会想监听一些事件,好同时处理一些其它任务。
SDK 使用 symfony/event-dispatcher 组件进行事件的相关操作。
在使用之前,需要先确保安装了 symfony/event-dispatcher 组件,如果没有,请安装
composer require symfony/event-dispatcher
::: tip
使用事件系统前,确保已初始化 pay。即调用了 Pay::config($config)
:::
<?php
use Yansongda\Pay\Event;
use Yansongda\Pay\Event\PayStart;
// 1. 新建一个监听器
class PayStartedListener
{
public function sendEmail(PayStart $event)
{
// 可以直接通过 $event 获取事件的额外数据,例如:
// 支付传递的参数:$event->params
// coding to send email...
}
}
// 2. 添加监听器
Event::addListener(PayStart::class, [new PayStartedListener(), 'sendEmail']);
// 3. 喝杯咖啡