通过PHP发送电子邮件,英镑符号

时间:2013-02-14 16:02:45

标签: php character-encoding

我需要使用PHP的mail()函数发送电子邮件。我正在使用的代码是:

$email_message = chunk_split(base64_encode($email_message));
$headers = "Content-Transfer-Encoding: base64\r\n\r\n";
mail($to, $subject, $email_message, $headers);

电子邮件中有一个英镑符号未正确处理,即收件人收到错误的符号。正如它与字符编码有关,我不知道如何设置它来告诉电子邮件客户端如何编码字符以及如何正确处理英镑符号。这些信息可以放在标题中吗?

2 个答案:

答案 0 :(得分:3)

您是否正确设置了电子邮件的编码?这可以通过设置

来完成
  

'内容类型:text / html;字符集= UTF-8'

在邮件的标题中。

如果您向下滚动,请在此处提供大量文档:http://php.net/manual/en/function.mail.php

答案 1 :(得分:2)

如果你有英镑标志出现,那么看下面

$costsum = "£".$costsum;   (Does not work)
$costsum = "£".$costsum; (Does not work)
$costsum = "#163;".$costsum; (Does not work)

我找到的答案就是这个!

$costsum = "\243".$costsum;
无论编码是什么,\ 243都是英镑符号。 我用UTF-8尝试了所有页面,但也没用。 它用于通过电子邮件发送电子表格。