我正在尝试使用以下代码使用Zend_Mail发送邮件:
function sendMail() { $config = array('auth' => 'login','username' => 'UserName','password' => 'Password','port'=>'27'); $mail = new Zend_Mail(); $mail->setBodyText($mailBody); $mail->setFrom('example@host.com','The Company Name'); $mail->addTo('example@host.com','Recipient Name'); $mail->setSubject('Mail subject'); $mail->send(new Zend_Mail_Transport_Smtp('example@server.com',$config)); }
现在问题是$mailBody有法语字符.例如:
Merci d'avoir passé commande avec Lovre. Voici le récapitulatif de votre commande
当然后查看发送的邮件时,相同的行显示如下:
Merci d'avoir pass? commande avec Lovre. Voici le r?capitulatif de votre commande
口音被问号所取代!我尝试使用utf8_encode对邮件正文进行编码,但问题仍然存在.
注意:使用file_get_contents从文本文件中读取正文内容.
您必须在Zend_Mail构造函数中将编码设置为UTF-8:
$mail = new Zend_Mail('UTF-8');
还要确保$mailBody包含UTF-8文本.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。