Attachment with file_get_contents?



我花了相当多的时间试图找出使用 Lavarel 4 发送电子邮件并包含邮件附件的任何情况。甚至没有人谈论它,每个人都在从文件系统附加文件。

有没有人有过发送附加图像的电子邮件(如这样:http://www.w3schools.com/html/html5.gif)而不实际将其下载到磁盘上的经验?

Swift Mailer 绝对允许您使用 Swift_Attachment::newInstance() 附加数据:

http://swiftmailer.org/docs/messages.html#attaching-dynamic-content

看起来Laravel有一个包装器方法,只是在主文档中没有提到。看这里:

https://github.com/laravel/framework/blob/4.2/src/Illuminate/Mail/Message.php#L196

http://laravel.com/api/4.2/Illuminate/Mail/Message.html#method_attachData

所以你会像这样使用它:

$data = file_get_contents(...);
$message->attachData($data, $filename);

这对于您自己动态生成数据(例如 PDF)的情况特别有用。

如果您只是从 URL 中提取预先存在的文件,您只需对 URL 使用标准的 attach() 方法,然后让 Swift Mailer 获取它:

$message->attach("http://www.w3schools.com/html/html5.gif");

相关内容

  • 没有找到相关文章

最新更新