【问题标题】:UTF-8 in PHP mail() for ÜÖÄÜÖÄ 的 PHP mail() 中的 UTF-8
【发布时间】:2014-06-06 09:47:29
【问题描述】:

我有这个 PHP 代码来发送邮件

            if(Input::has('email')){
                $to      = Input::get('email');
                $link    = 'blabla';
                $subject = 'blabla';
                $message = "Ü Ä Ö jfklsfjal";
                $headers = 'From: dontreply@asdf.com' . "\r\n" .
                    'Reply-To: dontreply@asdf.com' . "\r\n" .
                    'Content-Type: text/plain;charset=utf-8\r\n' . "\r\n" .
                    'X-Mailer: PHP/' . phpversion();

                mail($to, $subject, $message, $headers);
            }

问题是,它仍然没有发送 Ö Ä 等等。不正确(但我只是添加了内容类型)!

有人知道为什么它不起作用吗?

【问题讨论】:

    标签: php email encoding utf-8 sendmail


    【解决方案1】:

    我认为您的标题不正确,因为您有 \r\n 部分内容类型(用单引号括起来),即:

                $headers = 'From: dontreply@asdf.com' . "\r\n" .
                    'Reply-To: dontreply@asdf.com' . "\r\n" .
                    'Content-Type: text/plain;charset=utf-8\r\n' . "\r\n" .
    -------------------------------------------------------^^^^
                    'X-Mailer: PHP/' . phpversion();
    

    尝试将上述更改为:

                $headers = 'From: dontreply@asdf.com' . "\r\n" .
                    'Reply-To: dontreply@asdf.com' . "\r\n" .
                    'Content-Type: text/plain;charset=utf-8' . "\r\n" .
                    'X-Mailer: PHP/' . phpversion();
    

    如果这不起作用,试试这个:

                $headers = 'From: dontreply@asdf.com' . "\r\n" .
                    'Reply-To: dontreply@asdf.com' . "\r\n" .
                    'Content-Type: text/html;charset=utf-8' . "\r\n" .
                    'X-Mailer: PHP/' . phpversion();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      • 2010-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-16
      相关资源
      最近更新 更多