進入laravel專案根目錄
composer require guzzlehttp/guzzle": "~5.3|~6.0
MAIL_DRIVER=smtp//開啟163的smtp服務,獲取到隨機密碼
MAIL_HOST=smtp.163.com
MAIL_PORT=25
MAIL_USERNAME=18106503226@163.com//傳送者郵箱
MAIL_PASSWORD=********//密碼,隨機生成的
MAIL_ENCRYPTION=null
引數解釋
1.MAIL_DRIVER
laravel提供了四種種驅動,Mailgun驅動,Mandrill驅動,SES驅動,Smtp驅動,這幾種都依賴我們第一步安裝的guzzle,具體可以參考laravel手冊。本次選擇的是smtp驅動。所以mail_derver=smtp
2.MAIL_HOST
郵件傳輸伺服器,一般免費的郵箱,如下列出的,他們的SMTP伺服器就是在域名前加上smtp就行了.
smtp.163.com
smtp.21cn.com
smtp.sina.com.cn
smtp.sohu.com
smtp.126.com
3.MAIL_USERNAME PASSWORD
當你在郵箱後臺設定了開通smtp,就回讓你設定一個專門供第三方使用的密碼,這裡的密碼就是這個密碼,具體這是可以百度查詢。
163郵箱開啟smtp教程
//設定驅動
'driver' => env('MAIL_DRIVER', 'smtp')
// 傳送者 也可以後面通過Mail函式設定
'from' => ['address' =>'18106503226@163.com', 'name' => 'Jacklin']
Mail::send('email', $data, function ($message) use ($data) {
$message->to('957534377@qq.com', $data['name'])->subject('你好啊');
});
1.function() use (){}
這是php閉包函式的結構,可以使用變數作為引數,在這裡沒有什麼好說的,但是閉包函式的用法的機制類似js的機制,具體百度。
2.引數分析
Mail::send(1,2,3)
第一個引數是一個blade模板,裡面可以寫具體簡訊內容,並作樣式處理
第二個引數是一個陣列,傳入blade模板中
第三個引數是閉包函式,使用這個閉包可以指定訊息的其他屬性,例如抄送、群發,等等
簡單傳送可以使用to方法,to方法裡定義了收件人的郵箱和收件人稱為,可以為空。
Route::get('test',function(){
\Mail::send('email', [], function ($message) {
$message->to('361525737@qq.com', '123')->subject('主題');
});
});
具體方法如下:
$message->from($address, $name = null);
$message->sender($address, $name = null);
$message->to($address, $name = null);
$message->cc($address, $name = null);
$message->bcc($address, $name = null);
$message->replyTo($address, $name = null);
$message->subject($subject);
$message->priority($level);
$message->attach($pathToFile, array $options = []);
// 從$data字串追加檔案...
$message->attachData($data, $name, array $options = []);
// 獲取底層SwiftMailer訊息例項...
$message->getSwiftMessage();
qq郵箱smtp
rkjclatrixkpbjgc
phhbkmhzattwcagd
powpjvvxhwowbhjd
本作品採用《CC 協議》,轉載必須註明作者和本文連結