Laravel 5.6 中的 Cron 作业发送带有生成的 PDF 文件的电子邮件
Cron job in Laravel 5.6 to send email with a generated PDF file
我有一个关于如何处理的问题。我正在使用 Laravel
目标 :
在每月的最后一天发送包含生成的 PDF 的电子邮件。
你如何做到这一点?
我像这样在控制器中创建我的 PDF(使用 laravel-dompdf 包)
$pdf = PDF::loadView('exportPDF.templatePDF', compact('data'));
return $pdf->stream('fileName'.pdf');
我应该使用通知文件 (php artisan make:notification ActionNotification) 添加到我的作业队列中吗?命令文件(php artisan make:command ActionCmd)?直接在我的控制器中的方法中?或其他方法?
如果您能在 Laravel 中为我提供开发此功能的正确方法,我将不胜感激。
因为我不知道如何以及从哪里开始这样做。
非常感谢。
您可以创建一个 Queued Job and call it via Task Scheduling。
像这样:
php artisan make:job SendMonthlyEmailWithPDF
然后在创建的class中编辑handle
方法来发送邮件。
并在每个月底调用它:
$schedule->job(new SendMonthlyEmailWithPDF)->when(function () {
return \Carbon\Carbon::now()->endOfMonth()->isToday();
});
我有一个关于如何处理的问题。我正在使用 Laravel 目标 : 在每月的最后一天发送包含生成的 PDF 的电子邮件。
你如何做到这一点?
我像这样在控制器中创建我的 PDF(使用 laravel-dompdf 包)
$pdf = PDF::loadView('exportPDF.templatePDF', compact('data'));
return $pdf->stream('fileName'.pdf');
我应该使用通知文件 (php artisan make:notification ActionNotification) 添加到我的作业队列中吗?命令文件(php artisan make:command ActionCmd)?直接在我的控制器中的方法中?或其他方法?
如果您能在 Laravel 中为我提供开发此功能的正确方法,我将不胜感激。 因为我不知道如何以及从哪里开始这样做。
非常感谢。
您可以创建一个 Queued Job and call it via Task Scheduling。 像这样:
php artisan make:job SendMonthlyEmailWithPDF
然后在创建的class中编辑handle
方法来发送邮件。
并在每个月底调用它:
$schedule->job(new SendMonthlyEmailWithPDF)->when(function () {
return \Carbon\Carbon::now()->endOfMonth()->isToday();
});