嘿我用这样的东西发送文本邮件或html,但它在html版本中发送。我做错了什么?如果电子邮件无法接收html,我该如何才能发送文字?
$htmlPart = new MimePart($htmlBody);
$htmlPart->type = "text/html";
$textPart = new MimePart($textBody);
$textPart->type = "text/plain";
$body = new MimeMessage();
$body->setParts(array($textPart, $htmlPart));
$message = new Message();
$message->addFrom($from, "My Corp.")
->addTo($email)
->setSubject(mb_convert_encoding($subject,"UTF-8"));
$message->setBody($body);
$message->setEncoding("UTF-8");
$options = /* … */
$transport = new SmtpTransport();
$transport->setOptions($options);
$transport->send($message);
答案 0 :(得分:1)
添加:
$message->getHeaders()->get('content-type')->setType('multipart/alternative');
在setBody()
来电之后。其他一切看起来还不错。如果之后仍然没有工作,请在您的问题中添加更多信息,特别是您在电子邮件客户端中看到的内容。