laravel发送邮件

https://blog.csdn.net/zhangzhangdan/article/details/52637575

在laravel框架本身中就有已经定义好的一些类文件,下面就来试验一下如何调用laravel下的邮件类(我是通过163邮箱给qq邮箱发送消息)

一.修改文件  .env

    MAIL_DRIVER=smtp                   
    MAIL_HOST=smtp.163.com            //邮箱类型  
    MAIL_PORT=25                      //端口号  
    MAIL_USERNAME=13522469531@163.com //发送邮件邮箱地址  
    MAIL_PASSWORD=enwgdan123          //客户端授权码,下面我会详细说一下如何获取授权码  
    MAIL_ENCRYPTION=null  

   获取授权码:

   1) 登录邮箱-------> 2)找到  设置 ------->  3) 点击 客户端授权密码(如下图所示) -------> 4)点击 开启 ,如未开启,就选择开启,若已开启,就从中找到授权码

   

二.修改config /mail.php

  1)  'host' => env('MAIL_HOST', 'smtp.qq.com'), //修改邮件格式(你接收邮件的邮件格式) 
  2)  'port' => env('MAIL_PORT', 25), //邮箱端口号 
  3)  'from' => ['address' => '13522412531@163.com', 'name' => null], //发送邮件的邮箱地址 三.控制器 
  1)  use Mail; //头部引用mail类
  2)  调用的代码
    public function send()  
        {  
      
            $data = [  
            'email'=>'asd1045868018@qq.com', //接收邮件邮箱  
            'name'=>'demo',   
            'uid'=>1,                       //这两个参数可又可无,不用修改即可  
            'activationcode'=>'213131'  
            ];  
            Mail::send('activemail', $data, function($message) use($data)   //activeemail是执行代码的表单页面  
            {  
                $message->to($data['email'], $data['name'])->subject('欢迎注册我们的网站,请激活您的账号!');  
            });  
        }  

四.路由 // 邮箱 Route::get('/send','AccountController@send');

五.视图层 activemail.blade.php视图层必须是这个名字

    <span style="font-size:12px;"><!doctype html>  
    <html lang="zh-CN">  
      <head>  
        <meta charset="UTF-8">  
        <meta http-equiv="X-UA-Compatible" content="IE=edge">  
      </head>  
    <body>  
      <a href="{{ URL('active?uid=1&activationcode=123123123') }}" target="_blank">点击激活你的账号</a>  
    </body>  
    </html></span>  

这样,你的邮箱就能发送了

原文地址:https://www.cnblogs.com/lxwphp/p/15454146.html