Ответ 1
Вы должны сохранить сгенерированную электронную почту как переменную, затем вы можете просто добавить несколько вложений следующим образом:
public function build()
{
$email = $this->view('emails.employment_mailview')->subject('Employment Application');
// $attachments is an array with file paths of attachments
foreach($attachments as $filePath){
$email->attach($filePath);
}
return $email;
}
В этом случае ваша переменная $attachments
должна быть массивом с путями к файлам:
$attachments = [
// first attachment
'/path/to/file1',
// second attachment
'/path/to/file2',
...
];
Также вы можете прикреплять файлы не только по путям к файлам, но и с MIME-типом и желаемым именем файла, см. документацию о втором случае использования метода
attachment
: https://laravel.com/docs/master/mail#attachments
Например, ваш массив $attachments
может выглядеть примерно так:
$attachments = [
// first attachment
'path/to/file1' => [
'as' => 'file1.pdf',
'mime' => 'application/pdf',
],
// second attachment
'path/to/file12' => [
'as' => 'file2.pdf',
'mime' => 'application/pdf',
],
...
];
После того, как вы можете прикрепить файлы из этого массива:
// $attachments is an array with file paths of attachments
foreach($attachments as $filePath => $fileParameters){
$email->attach($filePath, $fileParameters);
}