土耳其语邮件


Mail in turkish language

我的要求是在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 ()
);

这里一切都很顺利,但问题是主题以"evrimii Tebrik Card Designer Takım"中的(Takım as Takım)编码形式进行任何能提供帮助的人都将不胜感激。

只是一个建议:不要使用内置的邮件功能。使用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/

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

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