首页 > 编程 > PHP > 正文

php如何引入PHPMailer发送邮件的步骤讲解(附代码)

2020-03-22 17:50:33
字体:
来源:转载
供稿:网友
本篇文章给大家带来的内容是关于php如何引入PHPMailer发送邮件的步骤讲解(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

昨天做了一个发送邮件的功能,如果直接用mail()函数,需要拥有自己的邮件服务器,所有引入PHPMailer类方便快捷,简单写一下开发步骤:

一、拥有自己的邮箱账号(作为发件人邮箱)

分两种情况:

1、如果是企业邮箱,需要用到的参数为邮箱号和密码

2、如果是个人邮箱,需要用到的参数为邮箱号和授权码(只有开启之后才能通过PHP代码,控制邮件的自动发送)

二、PHPMailer的下载

下载地址:http://github.com/PHPMailer/PHPMailer

我这里是用的thinkphp 5,下载后放到vendor目录

三、封装发送邮件方法,设置相关参数

具体代码如下,这里我用的是企业邮箱,如果是个人邮箱,需更改以下几个参数值:

$mail- Host,$mail- Port,发件人邮箱密码(授权码)

 ?php * Created by PhpStorm. * User: Administrator * Date: 2018/10/15 0015 * Time: 13:33namespace app/common/model;require VENDOR_PATH . PHPMailer/src/Exception.php require VENDOR_PATH . PHPMailer/src/PHPMailer.php require VENDOR_PATH . PHPMailer/src/SMTP.php use PHPMailer/PHPMailer/PHPMailer;use PHPMailer/PHPMailer/SMTP;use PHPMailer/PHPMailer/Exception ;html' target='_blank'>class Mail //发件人邮箱 private static $_fromAddress = ***@medpeer.cn  //发件人邮箱登录密码(非企业邮箱为授权码) private static $_pwd = ***  //收件人邮箱 private static $_toAddress = ***@medpeer.cn  * 发送邮件 * @author ZZ * @param string $fromAddress 发件人 * @param string $pwd 发件人登录密码 * @param string $toAddress 收件人 * @param string $title 邮件题目 * @param string $content 邮件内容 * @return array public function sendMail($title,$content,$toAddress = ,$fromAddress = ,$pwd = ){ if (empty($title) || empty($content)) { return [ result = false, msg = 参数错误  if (empty($fromAddress)) { $fromAddress = self::$_fromAddress; $pwd = self::$_pwd; if (empty($toAddress)) { $toAddress = self::$_toAddress; $mail = new PHPMailer(); //告诉PHPMailer使用SMTP $mail- isSMTP(); //启用SMTP调试 // 0 =关闭(供生产使用) // 1 =客户端消息 // 2 =客户端和服务器消息 $mail- SMTPDebug = 2 ; //设置邮件服务器的主机名 $mail- Host = smtp.exmail.qq.com  //使用 // $ mail- Host = gethostbyname( smtp.gmail.com  //如果您的网络不支持SMTP over IPv6 //设置SMTP端口号 - 587用于经过身份验证的TLS,即RFC4409 SMTP提交 $mail- Port = 465; //设置加密系统使用 - ssl(不建议使用)或tls $mail- SMTPSecure = ssl  //是否使用SMTP身份验证 $mail- SMTPAuth = true ; //用于SMTP身份验证的用户名 - 使用gmail的完整电子邮件地址 $mail- Username = $fromAddress; //用于SMTP身份验证的密码(企业邮箱的话为登录密码) $mail- Password = $pwd; //设置发送的邮件的编码 可选GB2312 我喜欢utf-8 据说utf8在某些客户端收信下会乱码 $mail- CharSet = UTF-8  //设置要从中发送消息的人员 $mail- setFrom($fromAddress, ***  //设置备用回复地址 //$mail- addReplyTo( ***@qq.com , 腾讯  //设置要将消息发送给谁 $mail- addAddress($toAddress, ***  //设置主题行 $mail- Subject = $title; //从外部文件中读取HTML邮件正文,将引用的图像转换为嵌入式图像 //将HTML转换为基本的纯文本替代正文 //$mail- msgHTML(file_get_contents( contents.html ),__DIR__); //用手动创建的纯文本正文替换 $mail- AltBody = This is the body in plain text for non-HTML mail clients  $mail- Body = $content; $result = $mail- send(); if (!$result) { return [ result = false, msg = $mail- ErrorInfo]; } else { return [ result = true, msg = 成功发送邮件消息 }

以上就是php如何引入PHPMailer发送邮件的步骤讲解(附代码)的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表