測試使用郵箱16三、QQ郵箱php
QQ郵箱須要注意:須要開啓POP3/SMTP服務。html
開啓成功後生成祕鑰,祕鑰在配置中用到至關於密碼,生成祕鑰方法laravel
若是須要記錄發郵箱記錄時,你須要進行此配置api
config/mail.php數組
.env安全
mail.php與.env中服務器
'from' => [閉包
'address' => env('MAIL_FROM_ADDRESS', '與.env中MAIL_USERNAME保持一致'),函數
],測試
MAIL_USERNAME=address
driver
用於配置默認的郵件發送驅動,Laravel支持多種郵件驅動方式,包括smtp、Mailgun、Maildrill、Amazon SES、mail和sendmail,Mailgun和Amazon SES都是收費的Maildrill目前不支持中國區用戶,這三個都是第三方郵件服務。mail驅動使用PHP提供的mail函數發送,sendmail驅動經過Sendmail/Postfix(Linux)提供的命令發送郵件,smtp驅動經過支持ESMTP的SMTP發送郵件。host
是郵箱所在主機,好比咱們使用163郵箱,對應值是smtp.163.com
,使用QQ郵箱的話,對應值是smtp.qq.com
。port
用於配置郵箱發送服務端口號,好比通常默認值是25,但若是設置SMTP使用SSL加密,該值爲465。from
配置項包含address和name,前者表示發送郵箱,後者表示發送郵件使用的用戶名。encryption
表示加密類型,能夠設置爲null表示不使用任何加密,也能夠設置爲tls或ssl。username
表示郵箱帳號,好比*****@163.com password
表示上述郵箱登陸對應登陸密碼。注意QQ郵箱的話應該開啓POP3|SMTP服務時給的密鑰。sendmail
是在設置driver爲sendmail時使用,用於指定sendmail命令路徑。<?php namespace App\Http\Controllers; use Elasticsearch\ClientBuilder; use App\Jobs\Queue; use Illuminate\Support\Facades\Redis; use Illuminate\Support\Facades\Mail; class TextController extends Controller { public function send(){ $name = '***'; // Mail::send()的返回值爲空,因此能夠其餘方法進行判斷 Mail::send('text',['name'=>$name],function($message){ $to = '****@qq.com'; $message ->to($to)->subject('測試郵箱'); }); // 返回的一個錯誤數組,利用此能夠判斷是否發送成功 dd(Mail::failures()); } }
Mail::send();須要傳三個參數,第一個爲引用的模板,第二個爲給模板傳遞的變量,第三個爲一個閉包,參數綁定Mail類的一個實例。
Mailer::send文檔
Mailer:: failures文檔
在resresources/views/下建立一個text.blade.php
{{$name}}你好,這是一封測試文件。
最後url地址欄訪問測試便可