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 Illuminate\Support\Facades\Mail; // 在函數內,例如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

例如:

 

 




或者比較簡單的不需要任何模板的寫法:
例如:

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM