【问题标题】:PDF as mail attachment - LaravelPDF 作为邮件附件 - Laravel
【发布时间】:2015-06-23 14:06:09
【问题描述】:

我想使用 barryvdh/laravel-dompdf 包创建一个 PDF 并通过电子邮件作为附件发送。

我现在的代码是:

$pdf = PDF::loadView('layouts.factuur', array('factuur' => $factuur));

Mail::queue('emails.factuur', array('factuur' => $factuur), function($message) use ($pdf)
   {
       $message->to(Input::get('email'), Input::get('naam'))->subject('Onderwerp');
       $message->attach($pdf->output());
    });

但现在我收到以下错误:

Serialization of 'Closure' is not allowed

【问题讨论】:

    标签: laravel pdf sendmail


    【解决方案1】:

    您只能将可序列化的实体发送到队列。这包括 Eloquent 模型等。但不包括 PDF 视图实例。因此,您可能需要执行以下操作:

    Mail::queue('emails.factuur', array('factuur' => $factuur), function($message)
       {
           $pdf = PDF::loadView('layouts.factuur', array('factuur' => $factuur));
           $message->to(Input::get('email'), Input::get('naam'))->subject('Onderwerp');
           $message->attach($pdf->output());
        });
    

    【讨论】:

    • 如果您想将内存中的数据作为附件附加,也可以将 $message->attach() 替换为 $message->attachData()。
    猜你喜欢
    • 2015-10-28
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多