首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP HTML-Email结果中的惊叹号

PHP HTML-Email结果中的惊叹号
EN

Stack Overflow用户
提问于 2013-08-23 17:48:09
回答 4查看 9.5K关注 0票数 13

在这个PHP电子邮件函数的结果中,我得到了随机点的感叹号。我读到这是因为我的行太长了,或者我不得不用Base64编码电子邮件,但是我不知道该怎么做。

这就是我所拥有的:

代码语言:javascript
复制
$to = "you@you.you";
$subject = "Pulling Hair Out";
$from = "me@me.me";
$headers = "From:" . $from;
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: 64bit\r\n";

mail($to,$subject,$message,$headers); 

我怎样才能解决这个问题,这样就没有随机问题了!结果呢?谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-08-23 17:54:05

如前所述:Exclamation Point in HTML Email

问题是你的字符串太长了。将超过78个字符的HTML字符串输入邮件函数,您将得到一个!(砰)在你的弦里。

这是由于RFC2822 https://www.rfc-editor.org/rfc/rfc2822#section-2.1.1中的行长限制造成的。

票数 15
EN

Stack Overflow用户

发布于 2014-12-08 16:41:06

尝试使用以下代码:

代码语言:javascript
复制
$to = "you@you.you";
$subject = "Pulling Hair Out";
$from = "me@me.me";
$headers = "From:" . $from;
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$headers .= "Content-Transfer-Encoding: 64bit\r\n";

$finalMessage = wordwrap( $message, 75, "\n" );

mail($to,$subject,$finalMessage,$headers);

问题是一行不应超过998个字符。(另见https://stackoverflow.com/a/12840338/2136148)

票数 10
EN

Stack Overflow用户

发布于 2013-08-23 17:54:18

你说得对,那是因为你的电子邮件太长了。尝试用邮件标题中的这一行替换。

代码语言:javascript
复制
Content-Transfer-Encoding: quoted-printable
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18408856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档