PHPMailer版本5.2.7

$mailerObject = new PHPMailer;
$mailerObject->CharSet = 'UTF-8';
$mailerObject->IsSMTP();
$mailerObject->Host = 'dsfdf.sdfsdf.com';
$mailerObject->SMTPAuth = TRUE;
$mailerObject->Username = 'dfgdfg';
$mailerObject->Password = 'dfgdfgdfg';
$mailerObject->SMTPSecure = 'tls';
$mailerObject->WordWrap = 60;
$mailerObject->From = '[email protected]';
$mailerObject->FromName = 'test.de';
$mailerObject->AltBody = $bodyTextTemp;
$mailerObject->MsgHTML($bodyHtmlTemp);

我正在发送HTML邮件和文本邮件。在HTML模式下的Thunderbird中,正确显示了HTML。在“文本模式”下,看不到“文本内容”($ bodyTextTemp),但是看到了所有HTML标记都被删除的HTML内容($ bodyHtmlTemp)(看起来很丑...)。

查看邮件源,可以看到没有发送AltBody。

为什么PHPMail不接受我的AltBody?

最佳答案

因为msgHTML覆盖AltBody。如果要自己设置BodyAltBody,只需进行设置即可。 msgHTML是一个方便的函数,可以为您执行多项操作,但您无需使用它。如果要使用它,但还要设置AltBody,则只需在调用msgHTML之后进行设置即可。

关于email - PHPMailer AltBody无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24560328/

10-10 05:30