PHPMailer текстовое электронное письмо добавляет новую строку в конце

Я пытаюсь избавиться от новой строки в конце текстового сообщения электронной почты, которое я отправляю с помощью PHPMailer.

Что я делаю именно так:

$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->isHTML(false);
$mail->Body = $xxx1."\r\n".$xxx2."\r\n".$xxx3;
$mail->setFrom("[email protected]", "xxx");
$mail->addReplyTo("[email protected]", "xxx");
$mail->addAddress($to, $name);
$mail->Subject = $topic;
$mail->send();

Все хорошо, за исключением новой строки, которая добавляется после тела сообщения, это что-то вроде:

скриншот

Может быть, у кого-то есть идеи, как убрать этот маркер строки в конце сообщения?

Спасибо!

РЕДАКТИРОВАТЬ:
Переменная $ xxx3 — это параметр, передаваемый в функцию отправки почты. Устанавливается на «нет» или «да».

0

Решение

PHPMailer добавляет разрывы строк при сборке структуры MIME для сообщения. Увидеть createBody метод. Я думаю, что есть требование RFC, чтобы тела сообщений заканчивались переводом строки (не могу точно вспомнить, какой именно сейчас), поэтому всегда добавляется один, чтобы убедиться. Если это так важно, я бы порекомендовал вам сначала убрать разрыв в трейлинге:

$mail->Body = rtrim($xxx1."\r\n".$xxx2."\r\n".$xxx3, "\r\n");
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]