c语言编程笔录

首页 >   > 笔记大全

笔记大全

PHP开发使用 PHPMailer 发送邮件

更新时间:2023-12-20

第一段:PHPMailer 的介绍和常用功能

PHPMailer 是一个用于 PHP 开发的邮件发送库,有跨平台、高度可定制等特点,可用于发送电子邮件、HTML 格式邮件和附件形式的邮件,旨在提供最优质的邮件发送功能。PHPMailer 的常用功能包括:

  • 支持 SMTP、sendmail、PHP mail()、qmail四种邮件发送方式
  • 支持发件人与收件人的设定
  • 支持回复地址的设定
  • 支持邮件主题、邮件正文、纯文本邮件正文及 HTML 邮件正文的设定
  • 支持附件发送
  • 支持 SMTP 认证
  • 支持消息的加密和签名
 
require_once 'PHPMailer/PHPMailer.php';
require_once 'PHPMailer/SMTP.php';

$mail = new PHPMailer(); // 新建PHPMailer对象
$mail->IsSMTP(); // 使用SMTP方式发送
$mail->SMTPAuth = true;
$mail->Host = "smtp.gmail.com"; // SMTP服务器地址
$mail->Port = 465; // SMTP服务器端口号,常见的是465、587
$mail->SMTPSecure= "ssl"; // 邮件传输协议,有ssl和tls两种
$mail->CharSet = "UTF-8"; // 设置邮件的字符集
$mail->Encoding = "base64"; // 邮件内容编码方式,通常不需修改
$mail->Username = "your_email_address"; // SMTP登录账号,即发件人的邮箱
$mail->Password = "your_email_password"; // SMTP登录密码,即发件人的邮箱密码
$mail->From = "your_email_address"; // 发件人邮箱
$mail->FromName = "your_name"; // 发件人姓名
$mail->AddReplyTo("your_email_address","your_name"); // 回复邮件的地址和姓名,可选
$mail->AddAddress("收件人邮箱","收件人姓名"); // 邮件的接收地址
$mail->Subject = "邮件的主题"; // 邮件的主题
$mail->Body = "邮件的内容"; // 邮件的正文
$mail->AltBody = "邮件的纯文本内容"; // 邮件的纯文本格式的正文部分
$mail->WordWrap = 80; // 设置邮件正文部分的行宽
$mail->AddAttachment("/path/to/file"); // 添加附件,可选
$mail->Send(); // 发送邮件

第二段:PHPMailer 的安装和配置方法

PHPMailer 的安装十分简单,使用如下命令即可

 
composer require phpmailer/phpmailer

安装完毕后,使用以下代码对 PHPMailer 进行配置

 
$mail = new PHPMailer(); //新建PHPMailer对象
$mail->SMTPDebug = 0; //是否开启调试模式。开启会输出更多有用信息。
$mail->isSMTP(); //发送方式为SMTP
$mail->Host = 'smtp.exmail.qq.com'; //SMTP服务器地址
$mail->Port = 465; //SMTP服务器端口
$mail->SMTPSecure = 'ssl'; //SMTP服务器加密方式,默认tls
$mail->SMTPAuth = true; //SMTP服务器是否需要身份验证
$mail->Username = ‘xxx@qq.com’; //SMTP服务器用户名
$mail->Password = 'xxxxxxxxxx'; //SMTP服务器密码
$mail->setFrom('xxx@qq.com', 'test'); //发件人邮箱
$mail->addAddress($receiver, ''); //收件人邮箱
$mail->addReplyTo('xxx@qq.com', 'Reply'); //回复邮件地址
$mail->Subject = '这是邮件主题'; //邮件主题
$mail->msgHTML('邮件内容'); //邮件正文以及HTML代码
$mail->AltBody = ''; //纯文本邮件内容
$mail->addAttachment('', ''); //添加附件

第三段:PHPMailer 发送邮件的流程

使用 PHPMailer 发送邮件可以分为以下几个步骤:

  1. 实例化 PHPMailer 对象
  2. 设置邮件发送服务器的配置信息
  3. 设置邮件的发送者和接收者信息
  4. 设置邮件的主题和内容等
  5. 发送邮件

第四段:PHPMailer 的常见问题和解决方法

PHPMailer 使用过程中常见的问题与解决方法如下:

  1. 邮件发送失败:邮箱账号或密码错误,或发件服务器设置不正确,务必检查设置
  2. 邮件无法正常显示:可能是邮件过大超过限制导致邮件出错,可以适当减少邮件中的图片、附件等
  3. 邮件被拒收:可能是邮件内容涉及到违禁内容等问题,避免发送此类内容即可
  4. 邮件进入垃圾箱:可以提醒收件人将发件人邮箱地址加入白名单