PHP 利用 phpmailer 发送电子邮件

发布日期:2019-07-23 19:56:01 阅读数: 950次 来源:https://www.liminghulian.com/article/98 作者:

phpMailer 是一个很是强大的 ph p发送邮件类,能够设定发送邮件地址、答复地址、邮件主题、html网页,上传附件,而且利用起来很是便利。

phpMailer 的特点:

  • 1、在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。
  • 2、平台使用普遍,支撑的 SMTP 办事器包罗 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等等。
  • 3、支撑嵌入图像,附件,HTML 邮件。
  • 4、靠得住的强大的调试功能。
  • 5、支撑 SMTP 认证。
  • 6、自定义邮件头。
  • 7、支撑 8bit、base64、binary 和 quoted-printable 编码。

phpmailer 安装或者下载体例:

1、从 github 上下载: https://github.com/PHPMailer/PHPMailer/

2、利用 composer 安装:

composer require phpmailer/phpmailer

发送之前需要具有本身的邮件办事器,测试的时候其适用本身申请的免费邮箱最便利了,不需要本身再搭建办事器了,可能要设置装备摆设邮箱的SMTP办事,大部门公共邮箱(163、电话等)为了平安默认是封闭的。

网易邮箱设置装备摆设如下图:

QQ 邮箱相关设置装备摆设如下图:

邮箱 POP3办事器(端口995) SMTP办事器(端口465或587)
电话.com pop.电话.com smtp.电话.com

当然除了网易和 QQ 邮箱其他邮箱也是能够的,下面给出 php 代码示例:

实例

<?php
use PHPMailer\PHPMailer\PHPMailer;
use 
PHPMailer\PHPMailer\Exception;

require 
'./src/Exception.php';
require 
'./src/PHPMailer.php';
require 
'./src/SMTP.php';

$mail = new PHPMailer(true);                              // Passing `true` enables exceptions
try {
    
//办事器设置装备摆设
    
$mail->CharSet ="UTF-8";                     //设定邮件编码
    
$mail->SMTPDebug 0;                  &nb亚博sp;     // 调试模式输出
    
$mail->isSMTP();                             // 利用SMTP
    
$mail->Host 'smtp.163.com';                // SMTP办事器
    
$mail->SMTPAuth true;                      // 答应 SMTP 认证
    
$mail->Username '邮箱用户名';                // SMTP 用户名  即邮箱的用户名
    
$mail->Password '暗码或者授权码';             // SMTP 暗码  部门邮箱是授权码(例如163邮箱)
    
$mail->SMTPSecure 'ssl';                    // 答应 TLS 或者ssl和谈
    
$mail->Port 465;                            // 办事器端口 25 或者465 具体要看邮箱办事器支撑

    
$mail->setFrom('xxxx@163.com''Mailer');  //发件人
    
$mail->addAddress('aaaa@126.com''Joe');  // 收件人
    //$mail->addAddress('ellen@example.com');  // 可添加多个收件人
    
$mail->addReplyTo('xxxx@163.com''info'); //答复的时候答复给哪个邮箱 建议和发件人分歧
    //$mail->addCC('cc@example.com');                    //抄送
    //$mail->addBCC('bcc@example.com');                    //密送

    //发送附件
    // $mail->addAttachment('../xy.zip');         // 添加附件
    // $mail->addAttachment('../thumb-1.jpg', 'new.jpg');    // 发送附件而且重定名

    //Content
    
$mail->isHTML(true);                                  // 能否以HTML文档格局发送  发送后客户端可间接显示对应HTML内容
    
$mail->Subject '这里是邮件题目' time();
    
$mail->Body    '<h1>这里是邮件内容</h1>' date('Y-m-d H:i:s');
    
$mail->AltBody '若是邮件客户端不支撑HTML则显示此内容';

    
$mail->send();
    echo 
'邮件发送成功';
} catch (
Exception $e) {
    echo 
'邮件发送失败: '$mail->ErrorInfo;
}

发送完带附件的邮件界面如下:

本文由亚博编辑整理亚博手机app