0
votes

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?

1

1 Answers

0
votes
/**
* 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',
       ]);
}