TP5使用PHPMAILER发送邮件
TP使用PHPMAILER发送邮件
1.申请一个SMTP服务的邮箱。
我申请的是smtp.163.com的服务,注意SMTP服务密码不是登陆密码,需要单独设置
2.下载phpmailer类库文件http://pan.baidu.com/s/1kUNK9vx
3.将PHPMAILER类库中的class.phpmailer.php和class.smtp.php文件取出来,并重新命名为符合tp5命名规范的Phpmailer.php和Smtp.php
4.在项目根目录下的extend文件夹中,建立phpmailer文件夹,将上面两个改名好的文件放入其中。
5.设置Smtp.php的命名空间为namespace phpmailer;并且将CLASS SMTP改为CLASS Smtp
6.设置Phpmailer.php的命名空间为
namespace phpmailer;
Use phpmailer\Smtp;
并且将CLASS SMTP改为CLASS Phpmaiiler;
这两部很重要,如果使用原来的PHPMAILer和SMTP class名的话,TP5报错 无法找到类文件
7.在application/extra 下建立email.php文件 将在服务商申请好的邮箱服务信息,放入其中
代码如下
<?php
//发送邮件相关配置
return[
'EMAIL_SMTP'=>'smtp.163.com',
'EMAIL_ADDRESS'=>'zq_1xx8292xx23@163.com',
'EMAIL_LOGINNAME'=>'zq_1xx8292xx23@163.com',
'EMAIL_PASSWORD'=>'xxxx445864742',
'port'=>25
];
8.在phpmailer文件夹下建立新的类库文件Email.php
代码如下:
<?php
namespace phpmailer;
use phpmailer\Phpmailer;
//发送邮件类
class Email{
public static function send($address,$title,$message)
{
$Email = new Phpmailer();
//设置PHPMailer使用SMTP服务器发送email
$Email->IsSMTP();
//设置字符串编码
$Email->CharSet = 'UTF-8';
//添加收件人地址,可以使用多次来添加多个收件人
$Email->AddAddress($address);
//设置邮件正文
$Email->Body = $message;
//设置邮件头的FROM字段
$Email->From = config('email.EMAIL_ADDRESS');
//设置发件人名称
$Email->FromName = '周起';
//设置邮件标题
$Email->Subject = $title;
//设置SMTP服务器
$Email->Host = config('email.EMAIL_SMTP');
//设置为验证码
$Email->SMTPAuth = true;
//设置用户名密码
$Email->Username = config('email.EMAIL_LOGINNAME');
$Email->Password = config('email.EMAIL_PASSWORD');
//发送邮件
return ($Email->Send());
}
}
9.在需要使用到邮件服务的地方调用
//发送验证邮件 根据业务逻辑修改
$message = ‘hello’;
$title = '周起个人测试邮件';
$data['email'] = 445864742@qq.com
\phpmailer\Email::send($data['email'],$title,$message);
TP5使用PHPMAILER发送邮件的更多相关文章
- 利用PHPMailer发送邮件时报错
利用thinkphp集成PHPMailer发送邮件时报错:Failed to connect to server: Unable to find the socket transport “ssl” ...
- 使用PHPmailer发送邮件的详细代码
一.使用PHPMailer发送邮件的原因 PHP有内置的mail()方法,但是由于一些主机空间不支持该方法,所以经常会遇到无法发送邮件的情况. 所以,可以下载PHPMailer类,实现邮件发送. 二. ...
- ThinkPHP 中使用 PHPMailer 发送邮件 支持163和QQ邮箱等
[摘要]ThinkPHP是一个开源的PHP框架, 是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.本文介绍ThinkPHP 中使用 PHPMailer 发送邮件. PHP是自带可以发送邮件的Ma ...
- 在Thinkphp3.2 中使用PHPMailer 发送邮件
phpmailer发送邮件是php开发者首选的一个邮件发送插件了,下面我来介绍怎么集成phpmailer到thinkphp框架了,有需要了解的朋友可参考. phpmailer发送邮件功能很强大,今天真 ...
- PHPMailer 发送邮件(二)
发现PHPMailer又做了较大的更新,以前发送邮件的方法已不太适用,刚好要做一个实验,需要搭建个环境,这里使用Gmail进行测试,现记录下来. 传送地址Github: PHPMailer 基本要求的 ...
- 用phpmailer发送邮件提示SMTP Error: Could not connect to SMTP host解决办法
之前做项目的时候做了一个用phpmailer发送邮件的功能<CI框架结合PHPmailer发送邮件>,昨天步署上线(刚开始用新浪云,嫌贵,换成阿里了),测试的时候,发送邮件却意外报错了.. ...
- thinkphp使用PHPMailer发送邮件
第一步:准备PHPMailer 使用PHPMailer发送邮件,首先下载个PHPMailer 将下载的PHPMailer放到ThinkPHP文件夹里面的ThinkPHPExtendVendor 第二步 ...
- PHPMailer发送邮件中文附件名是乱码
可能使用了PHPMailer发送邮件的朋友带中文附件名时会出现乱码,下面我来介绍一个解决办法. 比如我们要发送的附件是"测试.txt",如果在添加附件的时候强制使用指定文件名的方式 ...
- phpmailer发送邮件
phpmailer发送邮件 PHP内置的mail函数使用起来不够方便,另外受其他语言的影响,博主更偏好面向对象的包管理模式,因此phpmailer成为了我用PHP发送邮件的首选,这里分享给大家. 库导 ...
随机推荐
- SQL Server 重新编译存储过程的方式有三种
SQL Server 中,强制重新编译存储过程的方式有三种: sp_recompile 系统存储过程强制在下次执行存储过程时对其重新编译.具体方法是:从过程缓存中删除现有计划,强制在下次运行该过程时创 ...
- weex 开发 (已放弃了)
关于weex 开发 本菜已放弃使用了,当初选择使用weex 是为了同时支持h5 和 android / ios 三端:想法很不错,深入之后 突然发现,开发起来并没有很轻松,因为weex 中有些方法, ...
- 修复linux密码
To reset the root password of your server, you will need to boot into single user mode. Access the M ...
- DP———4.完全背包问题(容量为V的背包可装最大价值的问题)
Piggy-Bank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- mysql 逻辑架构(三层)
1.客户端(主要处理连接,授权认证,安全等). 2.MYSQL服务器层(核心服务功能都在这层,包括,查询解析,分析,优化,缓存以及所有的内置函数,所有跨存储引擎的功能都在这层实现:存储过程,触发器,视 ...
- wxpython demo
#!/usr/bin/python # encoding: utf-8 '''Spare.py is a starting point for a wxPython program.''' impor ...
- Linux内核驱动之延时---内核超时处理【转】
转自:http://blog.chinaunix.net/uid-24219701-id-3288103.html 内核超时处理 jiffies 计数器 定时器中断由系统定时硬件以规律地间隔产生; 这 ...
- 华为上机测试题(MP3光标移动-java)
PS:此题满分,可参考 描述: MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲.为了简化处理,假设每屏只能显示4首歌曲,光标初始的位置为第 ...
- c#操作SQL的例子
>> 数据表复制 当表目标表存在时: insert into 目的数据库..表 select * from 源数据库..表 当目标表不存在时: select * into 目的数据库..表 ...
- java 调用可执行文件时,ProcessBuilder异常CreateProcess error=2
java 调用其他应用程序时,可能在windows下没有问题,但是转到linux下,却会报这样那样的错误,比如有设计文件操作会报FileNotFoundException等等(如下代码): Proce ...