Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >使用开源phpmailer发送邮件

使用开源phpmailer发送邮件

作者头像
libo1106
发布于 2018-08-08 07:16:31
发布于 2018-08-08 07:16:31
99200
代码可运行
举报
文章被收录于专栏:Web 开发Web 开发
运行总次数:0
代码可运行

网上也有几篇教程,不过我是为了给自己的服务可以发送邮件给自己用,所以只是用phpmailer的base功能,不需要使用smtp。

先去phpmailer官网下载,然后把里面的class.phpmailer.php放到自己的class库中。

我自己再定义一个mail.function.php的函数,里面new一个phpmailer的对象。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function postmail($body = ""){
    error_reporting(E_STRICT);
    date_default_timezone_set("Asia/Shanghai");//设定时区东八区
    require_once('./class/class.phpmailer.php');
    $mail             = new PHPMailer(); //new一个PHPMailer对象出来
    $body             = eregi_replace("[\]",'',$body); //对邮件内容进行必要的过滤
    $mail->CharSet ="UTF-8";//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
 
    $mail->SetFrom('send@domail.com', '发件人');
    $mail->AddReplyTo("send@domail.com","发件人,回复用");
    $mail->Subject = "邮件标题";
    $mail->AltBody = "当HTML邮件内容无法显示的时候,显示此内容";
    $mail->MsgHTML($body); //对邮件正文进行重新编码,保证中文内容不乱码
    $mail->AddAddress("mail@domail.com", "收件人");
 
    if(!$mail->Send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
        echo "Message sent!恭喜,邮件发送成功!";
    }
}

好吧,之前我是自己用PHP原生mail()函数写的邮件功能,但因为一直没看懂该如何对邮件正文进行重编码,导致邮件正文在部分收件工具中总是存在各种乱码情况。

需要用到发邮件的时候,只需要postmail($body);即可,当然,记得把mail.function.php给include进去。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2012-07-102,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
加入讨论
的问答专区 >
1程序员擅长1个领域
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    本文部分代码块支持一键运行,欢迎体验
    本文部分代码块支持一键运行,欢迎体验