zoukankan      html  css  js  c++  java
  • 如何在 Laravel 中使用 SMTP 发送邮件(适用于 163、QQ、Gmail 等)

    在.env文件中设置如下

    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.qq.com
    MAIL_PORT=465
    MAIL_USERNAME=00000000000@qq.com
    MAIL_PASSWORD=填写授权码(在QQ邮箱设置-账户-POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务-生成授权码)
    MAIL_ENCRYPTION=ssl

    在config/mail.php文件中设置如下

    'from' => ['address' => '00000000000@qq.com', 'name' => 'Laravel5'],


    Laravel 提供了非常简单的邮件发送 API,但是文档却不是太清晰,再加上它采用传递闭包(回调函数)的方式调用,导致邮件发送的使用门槛偏高。

    Laravel 4 和 Laravel 5 的邮件发送使用方式完全一致。Laravel 5 的邮件发送中文文档在:http://laravel-china.org/docs/5.0/mail

    本文中,我将以 163 邮箱为例,展示如何用 Laravel 内置的邮件发送类来发送邮件。

    配置

    修改邮件发送配置。4.2 在 app/config/mail.php,5 在 config/mail.php,修改以下配置:

    'host' => 'smtp.163.com',
    'port' => 25,
    'from' => array('address' => '***@163.com', 'name' => 'TestMail'),
    'username' => '***@163.com', // 注意,这里必须和上一行配置里面的邮件地址一致
    'password' => '****',

    发送

    在控制器或者模型里,调用以下代码:

    $data = ['email'=>$email, 'name'=>$name, 'uid'=>$uid, 'activationcode'=>$code];
    Mail::send('activemail', $data, function($message) use($data)
    {
        $message->to($data['email'], $data['name'])->subject('欢迎注册我们的网站,请激活您的账号!');
    });

    邮件视图为 views/activemail.blade.php:

    <!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='.$uid.'&activationcode='.$activationcode) }}" target="_blank">点击激活你的账号</a>
    </body>
    </html>
     
  • 相关阅读:
    创建XNA Shooter游戏——概述
    Android 界面切换与恢复原生界面
    输入和用户界面——SpaceCamera类
    ASP.NET下FCKedit配置及使用参考
    1282. Game Tree 夜
    1122. Game 夜
    1136. Parliament 夜
    hdu 3905 Sleeping 夜
    1195. Ouths and Crosses 夜
    1210. Kind Spirits 夜
  • 原文地址:https://www.cnblogs.com/caicaizi/p/5970514.html
Copyright © 2011-2022 走看看