如何在laravel邮件发送中动态附加多个文件

时间:2017-09-08 07:27:07

标签: laravel email



Mail::send('emails.welcome', $data, function($message)
{
    $message->from('us@example.com', 'Laravel');

    $message->to('foo@example.com')->cc('bar@example.com');

    $message->attach($pathToFile);
});




当我为这个$ message-> attach($ pathToFile)写foreach循环时;然后我得到错误undefine foreach:

Mail::send('emails.welcome', $data, function ($message) {
    $message->from('us@example.com', 'Laravel');
    $message->to('foo@example.com')->cc('bar@example.com');
    foreach ($this->quote_fileattache_results as $key => $value) {
        $message->attach(public_path('/upload/quote/') . $value->filen‌​ame); 
    }
});

1 个答案:

答案 0 :(得分:0)

您可以尝试以下附加多个文件

Mail::send('emails.welcome', $data, function($message) use ($pathToFile)
{
    $message->from('us@example.com', 'Laravel');

    $message->to('foo@example.com')->cc('bar@example.com');

    for ($i=0; $i < count($pathToFile); $i++) {
        $message->attach($pathToFile[$i]);
    }
});

希望这会有所帮助。