Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.2k views
in Technique[技术] by (71.8m points)

Laravel How to send File to Mailable

I need to replace mail function with Laravel Mail function. I have created Mailable InvoiceEmail to send the mail

    /* Attachment File */
    $filename = "invoice".$request->id.$language.".pdf";
    $path = "core/storage/app/pdf/";
       
    $file = $path.$filename; 

    $data = [
                'subject' => $subject,
                'body'    => $body
            ];
    

    Mail::to($mail_to)->send(new InvoiceEmail($data));

InvoiceEmail Class with build function generate the email

/**
 * Build the message.
 *
 * @return $this
 */
public function build()
{
    return $this->view('mail.invoice')
                ->with('body',$this->data['body'])
                ->subject($this->data['subject']);
}

How do I attach the pdf file with this email?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
/**
* Build the message.
*
* @return $this
*/
public function build()
{
   return $this->view('mail.invoice')
       ->with('body',$this->data['body'])
       ->subject($this->data['subject']);
       ->attachFromStorage('your_location', 'your_pdf.pdf', [
           'mime' => 'application/pdf',
       ]);
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...