我正在获取 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 .= "内容类型:文本/纯文本
没有错误的符号。
有什么想法吗? 谢谢, 莫
最佳答案
我解决了。 在 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);
?>
关于php 邮件有时显示符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31771123/