代码之家  ›  专栏  ›  技术社区  ›  user7747472

如何在laravel中使用电子邮件中的DOMPDF附加PDF

  •  0
  • user7747472  · 技术社区  · 7 年前

    您好,我正在尝试将pdf直接附加到电子邮件,而不使用laravel邮件功能存储到存储并将其发送给用户。一切正常,但问题是pdf而不是附件是base64编码的电子邮件内容。

    这是我的密码。这是内部邮件

    $subject ='Hello! Your invoice is here';
    
            $data['invoice_id']=$this->content['invoice_id'];
    
            $pdf = PDF::loadView('frontend.pages.invoice.invoice',$data);
    
    
            return $this->from('info@examplecompany.com')
                ->subject($subject)
                ->view('backend.emailtemplates.invoiceEmail')
                ->attachData($pdf->output(),'name.pdf', [
                    'mime' => 'application/pdf',
                ]) ;
    

    How to attach a PDF using barryvdh/laravel-dompdf into an email in Laravel 线程,即使我做了同样的方式作为它的答案建议,仍然不工作。

    谁能帮我一下吗。

    1 回复  |  直到 7 年前
        1
  •  0
  •   Danial Panah    7 年前

    https://github.com/niklasravnsborg/laravel-pdf

    • 保存($filename):将PDF保存到文件中
    • 下载($filename):让用户可以下载PDF。
    • stream($filename):返回一个带有PDF的响应以显示在浏览器中。
        2
  •  0
  •   kishan maharana    4 年前

    您可以参考以下代码来执行此操作。

     $data["email"]='useremail@gmail.com';
                $data["client_name"]='user_name';
                $data["subject"]='sending pdf as attachment';
    
                //Generating PDF with all the post details
    
                $pdf = PDF::loadView('userdata');  // this view file will be converted to PDF
    
                //Sending Mail to the corresponding user
    
                Mail::send([], $data, function($message)use($data,$pdf) {
                $message->to($data["email"], $data["client_name"])
                ->subject($data["subject"])
                ->attachData($pdf->output(), 'Your_Post_Detail.pdf', [
                           'mime' => 'application/pdf',
                       ])
                ->setBody('Hi, welcome user! this is the body of the mail');
                });
    

    希望对你有帮助。

    为了更好地理解,您可以阅读本文

    how to send pdf as an attachment in email in laravel