邮件用土耳其语

时间:2013-08-06 07:16:22

标签: php

我的要求是用php发送土耳其语的邮件。     这是我的代码:

$rst2 = $this->selectQry(TBL_MAILSETTING,"mailTypeId='8' AND langId='1'",'0','0');
$query2= $this->getResultRow($rst2);
$subject2 = $query2['mailSubject'];

$subject2 = iconv_mime_decode($subject2, 2, "utf-8");

$subject2 = mb_convert_encoding($subject2, "utf-8","AUTO");
$subject2 = mb_encode_mimeheader($subject2);

$from1 = $_POST['email'];
$query2['message'] = $query2['mailContaint'];
$query2['message']=str_replace("[name]",$_POST[name],$query2['message']);

$message1 = $query2['message'];

mail(
      $from1
    , $subject2
    , "$message1\r\n"
    ,   "From: $from\n"
      . "MIME-Version: 1.0\n" 
      . "Content-type:text/html;charset=iso-8859-1" . "\r\n" 
      . 'X-Mailer: PHP/' . phpversion ()
);

这里的每件事情都进展顺利,但问题是主题在“Takım”中以编码形式进行(Takım为evrimii Tebrik Card Designer Takım) 任何身体都可以提供帮助。

2 个答案:

答案 0 :(得分:0)

只是一个建议:不要使用内置邮件功能。使用Zend Mail,或phpmailer或PEAR Mail,或任何好的邮件包。关键是:一个完善的软件包解决了主要问题,也解决了你所问的问题(关于编码)。

但无论如何:你的问题是主题中的错误编码(这是针对utf-8):

mail($to, '=?utf-8?B?'.base64_encode($subject).'?=', $message, $headers);

有关主题字符集编码的更多信息,请点击此处:

http://ncona.com/2011/06/using-utf-8-characters-on-an-e-mail-subject/

答案 1 :(得分:0)

如评论中所述,您可能已在数据库中将编码字符作为ı

您可以使用html_entity_decode()http://de2.php.net/function.html-entity-decode)来反转编码。