我使用codeigniter发送邮件.. 当我收到一个到处都有不需要的“=”的邮件时。 以下是,
Phasellus dictum sapien neque luctus cursus。 Pellentesque sem do = or,fringilla et pharetra vitae。白痴。 Sed iaculis pulvinar = igula,ornare fringilla ante viverra et。在hac habitasse platea dictumst =。 Donec vel orci mi,eu congue justo。整数eget odio est,eget malesuada = orem。 Aenean sed tellus dui,vitae viverra risus。 Nullam massa sapien,pu = vinar eleifend fringilla id,convallis eget nisi。 Mauris a sagittis dui。 P = llentesque non lacinia mi。 Fusce sit amet libero sit amet erat venenatis s = llicitudin vitae vel eros。 Cras nunc sapien,interdum sit amet porttitor u =,congue quis urna。
CODE:
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'mail.****.com',
'smtp_port' => 587,
'smtp_user' => '*****@****.com',
'smtp_pass' => '*****',
'mailtype' => 'html',
'charset' => 'utf-8'
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->from('udh@****.com', 'Udhaya Kumar');
$this->email->to('kat@****.com');
$this->email->subject('Review Form Submitted');
$data['name'] = "Udhaya Kumar V";
$data['msg'] = "Thanks for submitting your review form. It has been submitted to <Manager name> for appraisal.";
$message = $this->parser->parse("email.tpl",$data,TRUE);
$this->email->message($message);
$this->email->send();
答案 0 :(得分:1)
看起来您的框架使用Quoted-Printable格式编码邮件(所有非ascii字符将转换为 = [hexnumber] ),这是邮件的事实标准。可以请检查一下,生成的邮件是否包含一个标题:
Content-Transfer-Encoding: quoted-printable
如果没有,那么&#34;简单&#34;修复可能只是将该标题添加到邮件中,看看是否可以解决问题。更复杂的解决方法是理解为什么框架不添加此标头。