正确折叠(包装)电子邮件中的标题行


Properly folding (wraping) header lines in email

我有一个PHP函数,可以通过电子邮件向用户订阅。我使用BCC,这样用户就看不到对方了,一切都很好,只有一个例外:我担心每行电子邮件太多,导致标题行太长。

注意:我确实把列表分解了,所以每封电子邮件最多使用75个电子邮件地址,但我不想因为开销而低于这个数字。

我尝试过几种折叠或换行的方法,但无论我做什么,第一次折叠后的任何地址都会被忽略。做这件事的正确方法是什么?

我对TOCC领域也感兴趣。

我强烈建议您使用现成的电子邮件库或框架(我有Zend_Mail的经验,您可以在没有ZF其他部分的情况下使用它)。在任何情况下,当你折叠电子邮件标题行时,你需要确保第一行之后的所有行都至少以一个空格字符开头,比如:

Bcc: foo1@example.com, foo2@example.com, ...
  foo3@example.com, ...

请确保使用CRLF换行,而不仅仅是LF("''r''n"而不是"''n")。

请参阅https://www.rfc-editor.org/rfc/rfc2822#section-2.2.3了解更多信息。