Symfony:如何在不保存的情况下将文件作为电子邮件附件发送



我使用的是symfony 6.1。我有一个接受文件上传的表单,它在我看来是有效的。

该表单没有实体支持,在这种特殊情况下,我认为没有必要将上传的文件保存在某个地方。将其作为附件发送就足够了一封邮件。我读过关于使用symfony的mailer组件附加文件的文章,但这些例子只涉及按路径附加文件。

是否可以跳过将文件保存到某个位置的步骤?

可以添加附件并从流中嵌入图像,因此无需保存。

附件

$email = (new Email())
// ...
->attach(fopen('/path/to/documents/contract.doc', 'r'))
;

嵌入式图像

$email = (new Email())
// ...
// get the image contents from a PHP resource
->embed(fopen('/path/to/images/logo.png', 'r'), 'logo')
;

你可以在symfony文档中阅读更多关于它的信息。

最新更新