如何在邮件主题中设置变音符号ü

如何在邮件主题中设置变音符号ü

问题描述:

我需要生成包含变音符号的德语电子邮件。在电子邮件本身中,这是完美的,但不是电子邮件的主题。我已经尝试了许多不同的变音字母,除了ü,它们似乎都可以工作。我也尝试过不同的邮件库(HTMLMimeMail & PHPMailer的),他们都未能在此:如何在邮件主题中设置变音符号ü

$mail = new htmlMimeMail(); 
$mail->setTextEncoding("base64"); 
$mail->setHTMLEncoding("base64"); 
$mail->setTextCharset("UTF-8"); 
$mail->setHTMLCharset("UTF-8"); 
$mail->setHeadCharset("UTF-8"); 
$mail->setSMTPParams(mailinglist_smtp_host,mailinglist_smtp_port); 
$mail->setHtml("test"); 
$mail->setFrom("[email protected]");  

$mail->setSubject("The ï, ö, ë, ä, and é work, but when adding the ü it doesn't"); 

$recipients[] = "[email protected]";  
$mail->send($recipients); 

&

$mail = new PHPMailer(); 
$mail->IsMail(); 
$mail->FromName = 'test'; 
$mail->From = '[email protected]'; 
$mail->AddAddress("[email protected]"); 
$mail->Subject = "The ï, ö, ë, ä, and é work, but when adding the ü it doesn't"; 
$mail->Body = "test";  
$mail->Send(); 

谁能帮我找的来源和解决这个问题?

您应该对quoted-printable进行编码。

像这样:

$mail->Subject = "=?UTF-8?Q?" . quoted_printable_encode("The ï, ö, ë, ä, and é work, but when adding the ü it doesn't") . "?="; 

引用的可打印编码在PHP中:http://www.php.net/manual/en/function.quoted-printable-encode.php

编辑:$mail->CharSet = "UTF-8";做的工作。

+0

谢谢,但这并没有解决它。这个问题现在转化为:=?UTF-8?Q?= C3 = AF,= C3 = B6,= C3 = AB,= C3 = A4和= C3 =不是吗?= – Sander

+4

嗯,也许这足以添加'$ mail-> CharSet =“UTF-8”;',并删除引用可打印的东西。试试吧,让我知道它是如何工作的! –

+0

超级,做了PHPMailer的工作:)。谢谢。现在,您可以在我的mimemail代码中看到,我尝试了一个与此类似的选项,但我显然错过了正确的设置。你可能知道我需要在mimemail中设置以应用相同的修复吗? – Sander