2

我刚刚为 php 安装了 swiftmailer,我有一些问题:

  1. 德语变音符号有问题 - 我输入错误的字符 我需要如何正确编码消息正文?
  2. swiftmailer 中是否有用于获取服务器日志的属性(发送邮件进行调试时的对话框)
  3. 如果邮件是纯文本或 html,我如何设置属性?

谢谢

4

2 回答 2

7

像这样设置纯文本或html

$message = Swift_Message::newInstance($subject)
->setFrom(...)
->setTo(....)
->setBody($message, 'text/html')
;

将纯文本更改为 setBody($message, 'text/plain')

或者将其设置为:

$message->setContentType('text/html')

或者

$message->setContentType('text/plain')

要使变音符号起作用,请尝试以下操作:

$message->setContentType('text/plain; charset=UTF-8')

显然将 html 电子邮件更改为 html

您还可以使用以下方法全局设置它:

Swift_Preferences::getInstance()->setCharset('UTF-8');

但是,这是默认设置,因此您遇到问题很奇怪。是邮件正文还是主题有问题?如果与主题有关,请尝试:

$subject = '=?UTF-8?B?'.base64_encode($subject).'?=';

于 2011-03-31T20:57:43.180 回答
4

德语变音符号有问题 - 我输入错误的字符 我需要如何正确编码消息正文?

您可以使用or的第三个参数setBodyaddPart设置字符集。您需要确保传递的字符串已经在该字符集中。

swiftmailer 中是否有用于获取服务器日志的属性(发送邮件进行调试时的对话框)

您应该能够通过启用其中一个日志插件来做到这一点。

如果邮件是纯文本或 html,我如何设置属性?

您可以通过将内容类型传递给setBodyaddPart来定义消息的 HTML 格式。

我强烈建议您浏览全面的在线文档以获取有关这些主题的更多信息。

于 2011-03-31T20:40:49.807 回答