如何从PHPMailer获取消息体?

时间:2011-08-23 08:33:49

标签: php smtp phpmailer

我使用PHPMailer通过SMTP发送电子邮件。它有效,但它不会保存已发送的电子邮件

sent items。我想在sent items发送电子邮件,任何想法?

我知道可以使用imap_append函数来实现它。但是,怎么做呢?

PHPMailer似乎没有返回$消息的功能。

if ($return = $mail->Send()) {

$stream = imap_open("{{$host}:993/imap/ssl}Sent Items", $user_name, $user_pwd); 

imap_append($stream, "{{$host}:993/imap/ssl}Sent Items" , $message  , "\\Seen");

imap_close($stream);

};

如何从PHPMailer获取消息正文?

2 个答案:

答案 0 :(得分:8)

PHPMailer中的实例变量都是公共的。 查看源代码,您可以使用:

$mail->Body

如果你想要包括所有边界的简单身体,你也可以使用:

$mail->CreateBody();

请参阅: http://phpmailer.svn.sourceforge.net/viewvc/phpmailer/trunk/phpmailer/class.phpmailer.php?revision=452&view=markup

答案 1 :(得分:0)

PHPMailer似乎没有返回$ message的功能。

是的,确实如此。至少在5.2.28版中,有一种方法getSentMIMEMessage()获取完整的MIME消息(与 email 正文不同)。该方法仅在发送电子邮件或调用preSend()方法之后才能起作用。