Всем привет. Возникла проблема с лишними переносами строк при получении писем. Код примерно такой:
function Send() {
$header = '...';
$body = $this->CreateBody();
$result = $this->MailSend($header, $body);
return $result;
}
function CreateBody() {
$result = "";
$result .= $this->EncodeString($this->Body, $this->Encoding);
return $result;
}
function EncodeString ($str, $encoding = "base64") {
$encoded = $this->FixEOL($str);
if (substr($encoded, -(strlen($this->LE))) != $this->LE)
$encoded .= $this->LE;
return $encoded;
}
function FixEOL($str) {
$str = str_replace("\r\n", "\n", $str);
$str = str_replace("\r", "\n", $str);
$str = str_replace("\n", $this->LE, $str);
return $str;
}
function MailSend($header, $body) {
$to = '...';
$sbj = '...';
$rt = @mail($to, $sbj, $body, $header);
return true;
}
В итоге $body непосредственно перед отправкой формируется правильно, но в письме приходит с лишними переносами, которые корежат текст (скрин из свойств письма в Яндекс Почте). Подскажите, пожалуйста, в какую сторону копать, чтобы исправить текст?