微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 如何将TCPDF生成的pdf作为Swiftmailer附件发送

我已经尝试了几种解决方案,最接近(对我来说)应该是这样的:
$file = $pdf->Output('','E');
$message->attach(Swift_Attachment::newInstance($file,'name.pdf','application/pdf'));

$pdf是TCPDF的一个实例,$message是Swift_Message的一个实例.
使用上面的电子邮件正在发送正常,文件已附加,但当我尝试打开它时,我收到错误消息,文件已损坏或编码错误.

我的问题是:如何将TCPDF生成的pdf作为Swiftmailer附件发送而不将文件保存到服务器并在发送电子邮件后将其删除. Here是TCPDF输出方法文档的链接,也许有人可以看到我错过的东西.

我正在使用这样的东西,它正在工作.对于PDF内容,我使用的是PDF库中最简单的示例之一.
[...]
$pdf_as_string = $pdf->Output('','S'); // $pdf is a TCPDF instance
[...]
$transport = Swift_MailTransport::newInstance(); // using PHP mail function
$message->setTo(array(
  "client@customdomain.com" => "Main Email","client@publicdomain.com" => "Secondary Email"
));
$message->setSubject("This email is sent using Swift Mailer");
$message->setBody("You're our best client ever.");
$message->setFrom("developers@mydomain.com","Developers United");
$attachment = Swift_Attachment::newInstance($pdf_as_string,'my-file.pdf','application/pdf');
$message->attach($attachment);
[...]

也许这个答案有点晚,因为我使用的是swiftmailer v4_3_0和TCPDF v6_0_002.但以防万一是值得的.

原文地址:https://www.jb51.cc/php/135143.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐