zoukankan      html  css  js  c++  java
  • Laravel5.5实现邮箱发送功能

    一、 邮箱配置

    我使用的163邮箱做的发送,需登录163邮箱开启POP3和SMTP服务,以及生成授权密码。

     
    打开设置,开启SMTP

    打开SMTP服务之后,还需要开启授权密码并设置。

     
    打开服务和配置授权密码

    二、 Laravel配置

    只需要配置.env即可。

    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.163.com
    MAIL_PORT=465
    MAIL_USERNAME=你的163邮箱地址
    MAIL_PASSWORD=你的163邮箱地址对应的授权密码(不是登录密码)| 腾讯企业邮是邮箱密码
    MAIL_ENCRYPTION=ssl | 腾讯企业邮是tls
    MAIL_FROM_ADDRESS="你的163邮箱地址 | 腾讯企业邮是需要这项和MAIL_USERNAME一模一样的"
    MAIL_FROM_NAME="你期望的发件人名称"
    

    端口465是使用了ssl;MAIL_ENCRYPTION不填的话,端口是25;注意MAIL_PASSWORD是授权密码,不是登录密码!

    例如:

    三、 编码

    新建一个或在需要调用发送邮件的controller,里面需要发邮件的函数增加:

    use IlluminateSupportFacadesMail;
    
    // 在函数内,例如post获得email地址之后调用:
    
    //发送邮件
    $to = $request['email'];//发送方
    $subject = '通知';//邮件标题
    Mail::send(
    'sendMail',//模板文件
    ['content' => $user_num,'url'=>'http://www.1707laravel.com/login'],//模板页面的内容
    //function后边将邮件设置为对象,同时use了相应的参数
    function ($obj) use($to, $subject) {
    //用邮件对象执行发送的功能
    $obj->to($to)->subject($subject);
    }
    );

    例如:

     

    第一个参数emails.test是view下的blade文件,用来显示邮件内容;第二参数是传给view文件的变量;第三个参数是闭包函数,用来配置收件人地址和邮件名称等。

    新建文件:./resources/views/emails/test.blade.php

    例如:




    或者比较简单的不需要任何模板的写法:
    例如:
     

  • 相关阅读:
    骑行封龙山
    静夜
    骑行伏羲台
    我?
    生活挺好
    多事之秋,大家注意安全
    看不到啊看不到
    个人时间管理
    给DataGrid设置中文列名
    食用油是那么让人又爱又恨!
  • 原文地址:https://www.cnblogs.com/jiangshiguo/p/11599624.html
Copyright © 2011-2022 走看看