PHPEmailer使用简介(以qq邮箱为例)
1、从网上下载PHPEmailer;
2、确保PHP环境支持sockets扩展,还要开启openssl,如下图:


3、配置QQ邮箱
1.开启SMTP服务

2.验证密保

3.获取授权码(这个就是IMAP/SMTP的密码)
4、发送邮件,代码如下
<?php
/**
* Created by PhpStorm.
* User: 黎志明
* Date: 2018/6/20
* Time: 17:53
*/
header("content-type:text/html;charset=utf-8");
ini_set("magic_quotes_runtime", 0);
require 'class.phpmailer.php';
try {
$mail = new PHPMailer(true);
$mail->IsSMTP();
$mail->CharSet = 'UTF-8'; // 设置邮件的字符编码,这很重要,不然中文乱码
$mail->SMTPAuth = true; //开启认证
$mail->SMTPSecure = 'ssl'; // 使用安全协议
$mail->Port = 465;
$mail->Host = "smtp.qq.com";
$mail->Username = "xxxxxx@qq.com";
$mail->Password = "xxxxx";
$mail->AddReplyTo("769111968@qq.com", "Timothy");//回复地址
$mail->From = "xxxxx@qq.com";
$mail->FromName = "xxxxx";
$to = "xxxxx@qq.com";
$mail->AddAddress($to);
$mail->Subject = "phpmailer测试标题";
$mail->Body = "<h1>演示</h1>这是演示内容";
$mail->AltBody = "当邮件不支持html时备用显示"; // 当邮件不支持html时备用显示,可以省略
$mail->WordWrap = 80; // 设置每行字符串的长度
//$mail->AddAttachment("c:/1.jpg"); // 添加附件
$mail->IsHTML(true);
$mail->Send();
echo '邮件发送成功';
} catch (phpmailerException $e) {
echo "邮件发送失败:" . $e->errorMessage();
}
5、遇到的问题:SMTP Error: Could not authenticate.
解决办法网上绝大多数都是一下几个(可能真的有效,但我遇到的就不能解决了)
1.按下面的来修改;
function IsSMTP() {
$this->Mailer = 'smtp';
}改为
function IsSMTP() {
$this->Mailer = 'SMTP';
}
2.将fsockopen函数替换成pfsockopen函数;
3.使用stream_socket_client函数,代码如下:
$this->smtp_conn = stream_socket_client("tcp://".$host.":".$port, $errno, $errstr, $tval);
以上的办法都试过,还是不能解决我的问题,然后我就怀疑是端口的问题,原来我用的端口是25,后来改成了465就解决了,这是由于使用了SSL,端口号要变成465
PHPEmailer使用简介(以qq邮箱为例)的更多相关文章
- zabbix4.2配置邮件+脚本报警:以QQ邮箱为例
一.邮箱配置:开启smtp服务和授权 开启smtp选项后,系统会生成一个授权,你需要记住这个授权码,后面需要写入配置文件. 二.配置管理mailx: (1)安装mailx:[root@zabbix-s ...
- Python3+smtplib+poplib+imaplib实现发送和收取邮件(以qq邮箱为例)
一.说明 1.1 程序说明 (1)smtp是邮件发送协议:pop和imap都是邮件接收协议,两者的区别通常的说法是imap的操作会同步到邮箱服务器而pop不会,表现上我也不是很清楚 (2)本程序实现使 ...
- thinkphp5 邮件发送(qq邮箱为例)
一.首先需要你开启smtp 服务,登录qq邮箱,进入设置 -> 账户 注意: 开启后会生成授权码,一定要记下,两个都记下,登录邮件客户端需要.这里配置邮件发送也需要这个授权码 二. 下载phpm ...
- 使用phpmailer发送邮件(以QQ邮箱为例)
<?php include("class/class.phpmailer.php"); //下载phpmailer并include两个文件 include(" ...
- centos7中mail实测(qq邮箱)
一.安装mailx sendmail 1.1查看是否已经安装 yum install -y mailx sendmail 如果已经安装,会提示已经安装,没有安装会自动安装. ...
- Thinkphp3.2 PHPMailer 发送 QQ邮箱 163邮箱
在进入正题这前先看下网易(163)邮箱的服务器地址和端口号 类型 服务器名称 服务器地址 SSL协议端口号 非SSL协议端口号 收件服务器 POP pop.163.com 995 110 收件服务器 ...
- 【PHPmailer】发送邮件(以163邮箱为例)
1.参考TP社区:http://www.thinkphp.cn/code/989.html 2.phpmailer.rar下载地址:http://www.thinkphp.cn/code/downlo ...
- node 发送邮件demo (QQ邮箱)
nodemailer是nodejs中的邮件发送模块,本文使用的版本为2.5.0 --下载模块 npm install nodemailer npm下载模块后,在项目中引入就可以使用: var node ...
- 关于企业邮箱无法提醒解决办法(未安装邮件客户端可添加至网易邮箱大师/qq邮箱等)
关于企业邮箱无法提醒解决办法: 一.使用现有的邮箱客户端,以下以网易的邮箱大师为例mail.exe 点击客户端左边的添加邮箱账号,在出现的对话框中输入账号和密码后,点击登陆按钮后,等待添加完成即可,邮 ...
随机推荐
- angular5 表单元素 checkbox radio 组讲解
一.checkedbox 1.ngModel绑定方式 <input [(ngModel)]="item.checked" value="item.checked&q ...
- C语言的的free和c++的delete的区别
首先free对应的是malloc:delete对应的是new:free用来释放malloc出来动态内存,delete用来释放new出来的动态内存空间. 应用的区别为: 1. 数组的时候int *p=( ...
- Spring boot实现监听Redis key失效事件实现和其它方式
需求: 处理订单过期自动取消,比如下单30分钟未支付自动更改订单状态 用户绑定隐私号码当订单结束取消绑定等 解决方案1: 可以利用redis自带的key自动过期机制,下单时将订单id写入redis,过 ...
- [.NET开发] C#连接MySQL的两个简单代码示例
实现代码一.使用的是mysql自带的驱动安装一下即可 这是一个简单的例子. 在这里有个问题:dataset如果没设主键的话,可能会引起一些对数库操作的问题,比如会造成updata出现错误. stati ...
- python下编译py成pyc和pyo和pyd
https://www.cnblogs.com/dkblog/archive/2009/04/16/1980757.html
- Phonetics: Lecture Three 语音 第三课 Teacher:Patrick
元音字母: [u] put [pʊt] push [pʊʃ] full [fʊl] sugar ['ʃʊgɚ] cook [kʊk] look [lʊk] took [tʊk] (v ...
- WPF全屏
https://blog.onedevjob.com/2010/10/19/fixing-full-screen-wpf-windows/ 让窗口重绘 Visibility = Visibility. ...
- ThreadLocal实现原理
一.ThreadLocal介绍 这是一个线程的局部变量.也就是说,只有当前线程可以访问.既然是只有当前线程可以访问的数据,自然是线程安全的. 为每一个线程分配不同的对象,需要在应用 ...
- ECharts学习(1)--toolbox(工具栏)
1. toolbox:这是ECharts中的工具栏.内置有导出图片.数据视图.动态类型切换.数据区域缩放.重置五个工具. 2. toolbox中的属性,不包含五个工具.里面最主要的就是feature这 ...
- ZOJ-3329 One Person Game (有环期望问题)
题目大意:有3个骰子,各有k1,k2,k3个面,面值为1~ki.还有一个计数器,初始值为0,统计所有的面值和.每次同时置这三个骰子,如果第一个骰子的朝上的值为a.第二个值为b.第三个值为c,那么将计数 ...