温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么解决php中mail正文乱码的问题

发布时间:2021-09-13 10:43:15 来源:亿速云 阅读:164 作者:小新 栏目:编程语言

这篇文章主要介绍怎么解决php中mail正文乱码的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

php mail正文乱码的解决办法:1、将读取的数据设置好编码方式为“UTF-8”;2、在发邮件的时候也指定编码方式为“UTF-8”即可。

本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑

如何解决php mail正文乱码问题?

PHP mail 中文乱码的解决方式

主要是编码的问题:

解决办法就是:

读取的数据设置好编码方式; 发邮件的时候也指定编码方式;

先用函数base64_encode() 使用 MIME base64 对数据进行编码

标题字符串前加编码类型例如: =?UTF-8?B?

当然如果是gb2312的话就 =?GB2312?B?

标题字符串后加:?=

-----------我的供配置参考---------

<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<body>
<?php
if(strlen($_POST["from"]) > 1)
//if "email" is filled out, send email
{
//send email
$email = $_POST["from"] ; 
$mailto = $_POST["mailto"];
$subject = "=?UTF-8?B?" . base64_encode($_POST["subject"]) . "?="; 
$message = $_POST["message"] ;
$header = 'MIME-Version: 1.0' . "\r\n" 
. "Content-type: text/html; charset=utf-8". "\r\n" 
. "From: <$email>"."\r\n";
//echo "mailto:$mailto<br />", "Subject: $subject<br />", "message:$message<br />", "From: $email<br />" ;
mail("$mailto", "$subject", $message, "$header" );
echo "<br />Your mail has been sent ! 
Thank you for using our Mail system ...<br />
We shall go to main page in 3 seconds <br />";
}
else{
echo "<center><h3>Welcome to Qunero-php Mail system </h3></center><br />";
echo '<form method="post" action="index.php">
From : <input type="text" name="from" /><br/ >
MailTo : <input type="text" name="mailto" /><br />
Subject : <input type="text" name="subject" /><br />
Message : <br /><textarea name="message" rows="15" cols="80"> </textarea><br />
<input type="submit" />
</form>';
}
?>
</body>
</html>

以上是“怎么解决php中mail正文乱码的问题”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI