手机版

PHPMailer安装与配置简单说明

2019-08-26 阅读 :

1. 通过composer安装PHPMailer

composer require phpmailer/phpmailer


2. html页面

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>首页</title>
</head>
<body>
<div class="container-fluid">
    <div class="row-fluid">
        <div class="span4">
        </div>
        <div class="span4">
            <form class="form-horizontal" method="post" action="{:url('index/index')}">
                <div class="control-group">
                    <label class="control-label" for="inputEmail">邮箱</label>
                    <div class="controls">
                        <input id="inputEmail" type="text" name="user_email"/>
                    </div>
                </div>
                <div class="control-group">
                    <label class="control-label" for="inputPassword">类容</label>
                    <div class="controls">
                        <input id="inputPassword" type="text" name="content" />
                    </div>
                </div>
                <div class="control-group">
                    <div class="controls">
                        <button type="submit" class="btn">发送</button>
                    </div>
                </div>
            </form>
        </div>
        <div class="span4">
        </div>
    </div>
</div>

</body>
</html>


3. 配置邮箱并开启POP3/SMTP/IMAP服务(以163邮箱为例)


4. PHP控制器

<?php
namespace app\index\controller;
use think\Controller;
use PHPMailer\PHPMailer\PHPMailer;
use think\Request;
class Index extends Controller
{
    public function index()
    {
      if (request()->isPost()){
          $re = input('post.');
          $data = [
              'user_email' => $re['user_email'],  //接收人邮箱
              'content' => $re['content']
          ];

          $this->sendEmail($data);
      }else{
          return view();
      }
    }

    public  function sendEmail($data = []) {

        $mail = new phpmailer(); //实例化
        $mail->IsSMTP(); // 启用SMTP
        $mail->Host = 'smtp.163.com'; //SMTP服务器 以qq邮箱为例子
        $mail->Port = 465;  //邮件发送端口
        $mail->SMTPAuth = true;  //启用SMTP认证
        $mail->SMTPSecure = "ssl";   // 设置安全验证方式为ssl
        $mail->CharSet = "UTF-8"; //字符集
        $mail->Encoding = "base64"; //编码方式
        $mail->Username = '1529*****927@163.com';  //发件人邮箱
        $mail->Password = '*****';  //发件人密码 ==>重点:是{授权码}邮箱设置里面,不是邮箱密码
        $mail->Subject = '邮箱验证'; //邮件标题
        $mail->From = '152******927@163.com';  //发件人邮箱
        $mail->FromName = '测试';  //发件人姓名
        if($data && is_array($data)){
            $mail->AddAddress($data['user_email']); //添加收件人
            $mail->IsHTML(true); //支持html格式内容
            $mail->Body = $data['content']; //邮件主体内容
            //发送成功就删除
            if ($mail->Send()) {
                //echo "Mailer Error: ".$mail->ErrorInfo;// 输出错误信息,用以邮件发送不成功问题排查
                return $this->success('发送成功');
            }else{
                return $this->error('发送失败');
            }

        }
    }
}

 

作者:_Damon

本文标题:PHPMailer安装与配置简单说明 - 服务器教程_服务器技术_服务器知识_vps教程
本文地址:https://www.helloaliyun.com/tutorial/123.html

相关文章

  • CentOS 7 常用命令(系统关机、重启以及登出)

    关机:(系统的关机、重启以及登出 ) # 关闭系统(1)[root@localhost ~]# shutdown -h now # 关闭系统(2)[root@localhost ~]# init 0 # 关闭系统(3)[root@localhost ~]# telinit 0 # 按预定时间关闭系统[root@localhost...

    2019-12-07 服务器教程
  • linux重启命令 reboot与shutdown -r now的区别与联系

    在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告...

    2019-12-07 服务器教程
  • CentOS 7 如何使用命令重启或关机

    安装GNOME的朋友们首先切换到字符界面。切换到字符界面的方法如下: 先登陆进入系统,进入图形化界面,然后按Ctrl+Alt+F6(笔记本的是Ctrl+Alt+shift+Fn),进入字符界面。关机命令:shutdown或poweroffshutdown:shutdown -h now...

    2019-12-07 服务器教程
  • CentOS 7 正确关机重启的命令方法

    linux主要用于服务器领域,而在服务器上执行一项服务是永无止境的,除非遇到特殊情况,否则不会关机。和Windows不同,在linux系统下,很多进程是在后台执行的。在屏幕背后,可能有很多人同时在工作。如果直接按下电源的按钮,其他...

    2019-12-07 服务器教程
  • CentOS下的yum upgrade和yum update区别,没事别乱用!

    说明:生产环境对软件版本和内核版本要求非常精确,别没事有事随便的进行yum update操作!!!!!!!!!yum update: 升级所有包同时也升级软件和系统内核yum upgrade:只升级所有包,不升级软件和系统内核...

    2019-12-07 服务器教程
你可能感兴趣
热门浏览