PHPMailer: замените идентификатор сообщения по умолчанию

Я отправляю электронные письма с помощью PHPMailer, evthg работает хорошо, но я хотел бы установить uniq MessageID для каждого письма.

Версия PHPMailer: "v5.2.16"

(загружается с помощью Composer из https://github.com/PHPMailer/PHPMailer.git )

Я нашел документацию здесь: 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'; 

Результат: это всегда MessageID по умолчанию, сгенерированный PHPMailer:

введите описание изображения здесь

и не мое … 🙁

Тогда я попробовал sthg более просто:

  $mail->MessageID = "blablag@domain.com"; 

Результат : KO (то же самое)

Документация указывает, что мы можем установить MessageID, и это должна быть строка, я вообще не понимаю, почему она не работает …

Есть идеи ?

Структура MessageID должна быть:

 <sometext@sometext> 

Если ваш MessageID не имеет такой точной структуры, PHPMailer игнорирует ваш MessageId и генерирует собственный MessageId.

Вы можете изменить свой код на:

 $mail->MessageID = "<" . md5('HELLO'.(idate("U")-1000000000).uniqid()).'-'.$type.'-'.$id.'@domain.com>'; 

И это должно сработать.