1

我在购买后使用 IPN 向客户发送邮件。一切都很顺利,除了一件烦人的小事。当我以买家身份测试使用我的邮件购买产品时,我的邮件收件箱中的邮件如下所示:http ://snag.gy/grrMy.jpg <- 它本身有双重主题,第一个主题没有更改为 UTF- 8 - 这是为什么?如果我突然点击那封邮件,只有 UTF-8 编码的主题会显示(如预期的那样):http ://snag.gy/k5VyF.jpg

这是我使用的 PHP 代码:

$to = filter_var($ipn_post_data[payer_email], FILTER_SANITIZE_EMAIL);
        $date = date('Y-m-d');
        $subject = "Tack för Ert köp! / Thank you for your order!";
        $headerFields = array(
    'Date: ' . date('r', $_SERVER['REQUEST_TIME']),
        "Subject: =?UTF-8?Q?".imap_8bit($subject)."?=",
        "From: {$to}",
    "MIME-Version: 1.0",
    "Content-Type: text/html;charset=utf-8"
        );
 mail($to, $subject, $message,  implode("\r\n", $headerFields));

因此,唯一的“问题”实际上是当收件箱中的邮件主题与第一个编码错误的主题相比翻倍时,它看起来很糟糕。有人对此有意见吗?

4

1 回答 1

1

您传递$subjectmail()两次——一次在第二个参数中,一次在第四个参数中作为$headerFields.

尝试将null其作为第二个参数传递。

于 2013-05-17T15:42:41.023 回答