php邮件显示有时符号

时间:2015-08-02 10:53:00

标签: php mysql

我正在获取mysql数据并使用php @mail:

$strHeader = "";
$strHeader .= "From:example@example.com\r\n";

    $strHeader .= 'MIME-Version: 1.0' . "\r\n";
    $strHeader .= "Content-Type: text/html; charset=utf-8\r\n"; // or UTF-8 //
    $strHeader .= $strMessage . "\r\n";

    $flgSend = @mail($strTo, $strSubject, null, $strHeader); // @ = No Show Error //
    if ($flgSend) {
        echo "Excel Generated & Email Sending.";
    } else {
        echo "Email Can Not Send.";
    }

现在我有时会得到符号 ,所有数据都显示正确,只是在一个单词中将一个字母转换为 。

必须说我什么时候改变

$strHeader .= "Content-Type: text/html

$ strHeader。=“Content-Type:text / plain

没有错误的符号。

任何想法? 谢谢, MOR

2 个答案:

答案 0 :(得分:1)

我解决了。 在PHP邮件中如果我们的任何行超过70个字符,我们应该使用wordwrap() 例如:

<?php
// The message
$message = "Line 1\r\nLine 2\r\nLine 3";


$message = wordwrap($message, 70, "\r\n");

// Send
mail('caffeinated@example.com', 'My Subject', $message);
?>

答案 1 :(得分:0)

尝试使用mb_encode_mimeheader(),检查,

http://php.net/manual/en/function.mb-send-mail.php