【发布时间】:2018-03-20 15:52:16
【问题描述】:
我一直在尝试从直接发送电子邮件转变为将它们添加到 Laravel Queue,并且我注意到如果电子邮件包含任何文件,它真的不喜欢处理它。
例如,如果我要直接发送电子邮件,则此示例可以正常工作,但如果我想将其添加到 Queue 则不会,因为它不会序列化 $file 变量。
$this->mail->queue('emails.contact-us',compact('data'), function($message) use($files)
{
$message->from('email@mail.co.uk', 'Test Subject');
foreach($files as $file){
$message->attach($file->getRealPath(),array(
'as' => $file->getClientOriginalName(),
'mime' => $file->getMimeType()
));
}
});
如果我尝试getFileContents,将所有数据存储到一个变量并将变量传递给Queue,它将创建一个Job,但是它应该生成的不是Json有效负载数据,而是将0 添加到payload 列。
所以我的问题是,以前有人处理过这种情况吗?我曾考虑过临时添加文件,但这似乎不是一个好的解决方案。
【问题讨论】:
-
小文件也会出现这种情况吗?
-
@SupunFictionPraneeth 这已经在 ~200kb 图像上进行了测试
标签: php laravel queue laravel-5.1