PHP邮件:是否在邮件头中使用$to和in引号?

PHP邮件:是否在邮件头中使用$to和in引号?,php,header,email,quotes,Php,Header,Email,Quotes,使用PHP邮件功能时,是否需要在$to和from/cc/bcc邮件标题中使用引号 我的意思是,假设我想将邮件发送到: User One <user@domain.com> 也许我需要使用引号,以防标题中只有一个引号?我不知道,有时我看到的例子中有引语,有时没有引语,有人知道吗,也许有人会解释 谢谢 这: 邮件(“\'User One\”。。。 将输出: "User One" <user@domain.com> User One <user@domain.co

使用PHP邮件功能时,是否需要在
$to
from/cc/bcc
邮件标题中使用引号

我的意思是,假设我想将邮件发送到:

User One <user@domain.com>
也许我需要使用引号,以防标题中只有一个引号?我不知道,有时我看到的例子中有引语,有时没有引语,有人知道吗,也许有人会解释

谢谢

这:

邮件(“\'User One\”。。。
将输出:

"User One" <user@domain.com>
User One <user@domain.com>
“用户一号”
而这:

mail("User One <user@domain.com>", ...
mail(“用户一号”。。。
将输出:

"User One" <user@domain.com>
User One <user@domain.com>
用户一号

更新:

我没有RFC的链接,但我注意到,当你用Gmail撰写电子邮件时,它会显示如下内容:

"Sarah Chafer" <sarah.chafer@domain.com>, 
“莎拉·金龟子”,
请参见此处的双引号。

这:

邮件(“\'User One\”。。。
将输出:

"User One" <user@domain.com>
User One <user@domain.com>
“用户一号”
而这:

mail("User One <user@domain.com>", ...
mail(“用户一号”。。。
将输出:

"User One" <user@domain.com>
User One <user@domain.com>
用户一号

更新:

我没有RFC的链接,但我注意到,当你用Gmail撰写电子邮件时,它会显示如下内容:

"Sarah Chafer" <sarah.chafer@domain.com>, 
“莎拉·金龟子”,

请参阅此处的双引号。

收件人必须符合RFC2822(请参阅)

因为实际的收件人介于<和>之间,所以不管您是否使用引号,邮件都会发送给同一个人;但他自己的电子邮件客户端可能会以不同的方式显示


在文档中,他们确实列出了没有引号的示例;我也倾向于这样做。

收件人必须符合RFC2822(请参阅)

因为实际的收件人介于<和>之间,所以不管您是否使用引号,邮件都会发送给同一个人;但他自己的电子邮件客户端可能会以不同的方式显示

在文档中,他们确实列出了不带引号的示例;我也倾向于这样做。

如果我正确阅读相关内容:

包含除以下字符以外的字符的字符串 允许在原子中使用引号字符串格式表示,其中 字符被引号包围(DQUOTE,ASCII值34) 人物

带引号的字符串被视为一个单位。也就是说,带引号的字符串是 在语义上与atom相同

将字符串括起来的正确字符是双引号
(仅此),但它是可选的

但是,如果您的收件人姓名中包含空格,我强烈建议您使用它。

如果我阅读了相关权利:

包含除以下字符以外的字符的字符串 允许在原子中使用引号字符串格式表示,其中 字符被引号包围(DQUOTE,ASCII值34) 人物

带引号的字符串被视为一个单位。也就是说,带引号的字符串是 在语义上与atom相同

将字符串括起来的正确字符是双引号
(仅此),但它是可选的


但是,如果您的收件人姓名中包含空格,我强烈建议您使用它。

这还不能回答问题。有一种RFC定义的方法可以做到这一点,如果我没记错的话,它甚至可以定义是使用单引号还是双引号。(我也想知道这个问题的答案。)@佩卡:看到这一点会很有意思,但我注意到,当你用gmail撰写电子邮件时,它会像
“Sarah Chafer”,
@Sarfraz Ahmed:我不明白你的意思,事实上,如果你从“用户一号”向我的Outlook Express发送电子邮件,我的Outlook Express会显示“发件人:用户一号”而不是“用户一号”(带引号)@Marco是的,这正是它的意图。如果字符串中包含空格,引号是用来包装字符串的,但它们不会显示。RFC似乎将<>之外的所有内容都视为注释或空白;这基本上意味着这不重要。<>内的是实际地址。这还不能回答问题。有这是一种RFC定义的方式,如果我没记错的话,它甚至定义了是使用单引号还是双引号。(我也想知道这个问题的答案。)@Pekka:看到这一点会很有趣,但我注意到,当你用gmail撰写电子邮件时,它会像“Sarah Chafer”一样将其放入,@Sarfraz Ahmed:我不明白你的意思,实际上,如果一个用户从“用户一号”向我的Outlook Express发送电子邮件,我的Outlook Express显示在发件人:用户一号而不是“用户一号”(带引号)@Marco是的,这正是它的意图。如果字符串中包含空格,引号是用来包装字符串的,但它们不会显示。RFC似乎将<>之外的所有内容都视为注释或空白;这基本上意味着这不重要。<>内的内容是实际地址。但仅仅因为我会这样做,就不重要了意思是它是好的:-/-pekka可能是对的,你应该放一些。我唯一可以肯定地说的是:如果你放一个开头的引号,也用一个结尾的引号。我知道这不是一个很有用的建议。事实上,我只是对
a,B
类型的地址有一个问题,因为服务器认为逗号是一个分隔符两个电子邮件地址之间的错误,从而导致发送到
a
,这是一个无效的地址;正确的格式似乎是
“a,B”
。可能相关:但仅仅因为我这样做并不意味着它是好的:-/-pekka可能是对的,你应该放一些。我唯一可以肯定的是:如果你放一个开始的报价,也用一个结束的报价。这不是一个太有用的建议,我知道。实际上,我只是有一个问题的地址类型
A,B
,因为服务器将逗号视为两个电子邮件地址之间的分隔符,从而导致发送到
A
,该地址无效;t