我使用PHPMailer发送电子邮件,evthg运行良好但我会为每封电子邮件设置uniq MessageID。
PHPMailer版本:" v5.2.16"
(从https://github.com/PHPMailer/PHPMailer.git加载Composer)
我在这里找到了文档: http://phpmailer.github.io/PHPMailer/classes/PHPMailer.html#property_MessageID
所以这就是我的尝试:
$mail = new PHPMailer;
...
$mail->MessageID = md5('HELLO'.(idate("U")-1000000000).uniqid()).'-'.$type.'-'.$id.'@domain.com';
结果:这始终是PHPMailer生成的默认MessageID:
而不是我...... :(
然后我尝试了更简单:
$mail->MessageID = "blablag@domain.com";
结果:KO(相同)
文档表明我们可以设置一个MessageID,它应该是一个字符串,我根本不明白为什么它不起作用......
有什么想法吗?
答案 0 :(得分:4)
MessageID
的结构应为:
<sometext@sometext>
如果您的MessageID
没有这个确切的结构 - PHPMailer会忽略您的MessageId
并生成它自己的MessageId。
您可以将代码更改为:
$mail->MessageID = "<" . md5('HELLO'.(idate("U")-1000000000).uniqid()).'-'.$type.'-'.$id.'@domain.com>';
它应该有用。