Laravel Framework, PHP & MySQL, Tutorials

Laravel send multiple attachments to Mailables

Rather than returning the direct mail call in the build method of a mailable you can assign it to a variable then add multiple attach calls before returning.

Here’s an example:

public function build()
{
    //setup the mail
    $mail = $this->subject('The subject', ['content' => $content])->markdown('mail.sendreply');

    //loop through attachments and attach to $mail
    $att = Attachment::where('sendEmail', 'Yes')->get();
    foreach($att as $file) {
        //attach the file
        $mail->attach($file->filePath);
    }

    //return and execute sending the mailable
    return $mail;
}

 

David Carr

David Carr

For the past 12 years, I’ve been developing applications for the web using mostly PHP. I do this for a living and love what I do as every day there is something new and exciting to learn.

In my spare time, the web development community is a big part of my life. Whether managing online programming groups and blogs or attending a conference, I find keeping involved helps me stay up to date. This is also my chance to give back to the community that helped me get started, a place I am proud to be apart of.

Besides programming I love spending time with friends and family and can often be found together going out catching the latest movie, staying in playing games on the sofa or planning a trip to someplace I’ve never been before.