我从我的网络邮箱帐户发送电子邮件到任何电子邮件地址。
邮件发送成功,但我如何在我的网络邮件帐户已发送文件夹中收到此邮件。
我使用codeigniter发送电子邮件功能。
答案 0 :(得分:0)
您应该在问题中包含您的代码。
这不是PHPMailer的工作,但它是相关的。看看the end of the gmail example provided with PHPMailer。它包括一个将已发送邮件上传到IMAP文件夹的部分。基本的想法是,在收到成功的send()
响应后,获取邮件的副本并将其上传到您的IMAP邮箱:
...
//send the message, check for errors
if (!$mail->send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
//Section 2: IMAP
if (save_mail($mail)) {
echo "Message saved!";
}
}
//Section 2: IMAP
//IMAP commands requires the PHP IMAP Extension, found at: https://php.net/manual/en/imap.setup.php
//Function to call which uses the PHP imap_*() functions to save messages: https://php.net/manual/en/book.imap.php
//You can use imap_getmailboxes($imapStream, '/imap/ssl') to get a list of available folders or labels, this can
//be useful if you are trying to get this working on a non-Gmail IMAP server.
function save_mail($mail)
{
//You can change 'Sent Mail' to any other folder or tag
$path = "{imap.gmail.com:993/imap/ssl}[Gmail]/Sent Mail";
//Tell your server to open an IMAP connection using the same username and password as you used for SMTP
$imapStream = imap_open($path, $mail->Username, $mail->Password);
$result = imap_append($imapStream, $path, $mail->getSentMIMEMessage());
imap_close($imapStream);
return $result;
}
CodeIgniter使用PHPMailer的包装器,但您应该能够以某种方式访问必要的数据,并且IMAP代码不是特定于PHPMailer。