Mailator包是一个Laravel的电子邮件调度器。它提供了一个轻量级的包,围绕配置电子邮件的时间表和模板,基于应用程序的事件。
use Binarcode\LaravelMailator\Tests\Fixtures\InvoiceReminderMailable;
use Binarcode\LaravelMailator\Tests\Fixtures\SerializedConditionCondition;
Binarcode\LaravelMailator\Scheduler::init('Invoice reminder.')
->mailable(new InvoiceReminderMailable($invoice))
->recipients('foo@binarcode.com', 'baz@binarcode.com')
->constraint(new SerializedConditionCondition($invoice))
->days(3)
->before($invoice->due_date)
->save();
上面的例子需要一个Mailable实例, 收件人, 一组必须评估为true 的发送约束条件, 以及安排邮件发送的能力 "在到期日的前三天" 。
除了上述constraint() 方法外,你还可以实现该包的Constraintable 接口。
use Binarcode\LaravelMailator\Constraints\Constraintable;
class InvoiceReminderMailable extends Mailable implements Constraintable
{
public function constraints(): array
{
return [
new DynamicContraint
];
}
}
这个包还包括一个电子邮件模板功能,你可以在包的readme中了解更多信息。