gpt4 book ai didi

PHP 发送到 Outlook PDF 文件

转载 作者:搜寻专家 更新时间:2023-10-31 21:32:44 24 4
gpt4 key购买 nike

我使用 fpdf 用 php 创建 pdf。一切都好。但我想将 pdf 文件发送到 outlook。

我正在使用 $pdf->Output('file.pdf','D');

它正在运行。我想将此文件附加到 Microsoft Outlook。

我怎么能这样?

最佳答案

您可以做的是将文件保存到服务器上的一个临时位置,然后使用类似PHPMailer 的东西。将该保存的文件附加到电子邮件中。 PHPMailer 比 PHP 的内置 mail 更容易用于附件功能。

您可以通过多种方式临时存储 PDF 文件。这是一个:

$tempfilename = time().'.pdf';
$pdf->Output($tempfilename,'F');

然后在 PHPMailer 中,您可以这样附加它:

$mail->addAttachment($tempfilename);

完成后,您可以从服务器上删除临时文件。

unlink($tempfilename);

如果出于任何原因 PHPMailer 无法用于您的情况,您可以使用 PHP 的内置 mail功能。如果您正在处理新文件或小文件,其中添加 PHPMailer 的成本相对较小,请尽可能这样做。否则,您可以尝试将这样的代码添加到您的 $headers 中。改编自关于使用 mail to send attachments 的回答:

//  Generate a random hash to send mixed content
$sep = md5(time());

// End of line
$eol = PHP_EOL;

// Content of file
$content = file_get_contents($tempfilename);
$content = chunk_split(base64_encode($content));

// Add attachment to headers
$headers .= "--" . $sep . $eol;
$headers .= "Content-Type: application/octet-stream; name=\"" . $tempfilename . "\"" . $eol;
$headers .= "Content-Transfer-Encoding: base64" . $eol;
$headers .= "Content-Disposition: attachment" . $eol . $eol;
$headers .= $content . $eol . $eol;
$headers .= "--" . $sep . "--";

关于PHP 发送到 Outlook PDF 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27358410/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com