Laravel之郵件發送

Laravel爲咱們提供了很便捷的郵件服務,只須要簡單的配置就能使用。

-->另外一篇Laravel隊列發送郵件php

它的配置文件在config/mail.php,下面咱們來看看它的配置文件html

這裏的 driver 指的是使用的驅動,默認使用的是smtplaravel

'driver' => env('MAIL_DRIVER', 'smtp'),

發送郵件的主機地址segmentfault

'host' => env('MAIL_HOST', 'smtp.mailgun.org'),

使用端口服務器

'port' => env('MAIL_PORT', 587),

發件人的郵箱地址,發送人名稱測試

'from' => ['address' => null, 'name' => null],

發送郵件協議ui

'encryption' => env('MAIL_ENCRYPTION', 'tls'),

這裏是smtp服務器的帳號:
QQ郵箱是 smtp.qq.com
網易郵箱是 smtp.126.com,smtp.163.com, smtp.yeah.net
新浪的是 smtp.sina.com.net

'username' => env('MAIL_USERNAME'),

服務器密碼scala

'password' => env('MAIL_PASSWORD'),

這些配置項能夠直接在項目根目錄下的 .env文件裏直接設置code

MAIL_DRIVER=smtp
MAIL_HOST=smtp.163.com
MAIL_PORT=587
MAIL_USERNAME=laravel@163.com
MAIL_PASSWORD=laravel
MAIL_ENCRYPTION=ssl

如今咱們配置完以後就能夠使用啦,下面在路由中添加一條路由,指向控制器的mail方法

Route::get('admin/mail','Admin\LoginController@mail');

接下來,咱們在控制器裏直接使用Mail::raw發送郵件

public function mail(){
        
        Mail::raw('這裏填寫郵件的內容',function ($message){
             // 發件人(你本身的郵箱和名稱)
            $message->from('Laravel@163.com', 'laravel');
            // 收件人的郵箱地址
            $message->to('xxxx@qq.com');
            // 郵件主題
            $message->subject('測試');
        });

    }

上面的是Mail::raw方法是以文字發送郵件,Laravel還爲咱們提供了以html模板發送,使用Mail::send

public function mail(){
        // 第一個參數填寫模板的路徑,第二個參數填寫傳到模板的變量
        Mail::send('mail.mail',['name' => 'laravel'],function ($message) {
            // 發件人(你本身的郵箱和名稱)
            $message->from('yn3259@163.com', 'laravel');
            // 收件人的郵箱地址
            $message->to('xxxx@qq.com');
            // 郵件主題
            $message->subject('測試');
        });
    }

而後模板裏咱們直接寫接收的變量名,好比在上面的地址mail.blade.php模板裏寫入{{$name}}

<!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>Document</title>
</head>
<body>
        <h3>{{ $name }}</h3>
</body>
</html>

這樣以模板發送郵件就完成啦。

相關文章
相關標籤/搜索