在經過一段時間的使用後,發現在項目中很多地方需要用到用戶驗證,以短信驗證和郵箱驗證為主流趨勢,小麥總結了如果在Laravel框架中實現發送郵件功能,以後會陸續更上如何實現短信驗證.....
在.env文件下
1.配置Laravel文件
MAIL_DRIVER=smtp //建議使用smtp方式
MAIL_HOST=smtp.163.com //建議使用163郵箱 QQ郵箱會有報錯
MAIL_PORT=25 //smtp 默認為25
MAIL_USERNAME=null //自己的163帳號
MAIL_PASSWORD=null //客戶端密碼
MAIL_ENCRYPTION=null
.
2.修改config/email.php文件中的
'from' => ['address' => null, 'name' => null], //手冊上未提示,但實際應用中 如果為addredd=>null則報錯,需要天寫自己的163地址
3. 注冊163的郵箱並進行郵箱帳號設置 POP3/SMTP/IMAP都要開啟 並開啟授權碼並進行手機驗證
4.參照Laravel手冊裡的郵件發送
必須注意的是 在控制器引用郵件發送時 必須首先引用use Mail
發送郵件測試
在路由裡設置
在控制器中寫入方法
其中
1:Mail::raw 是發送原生數據,其他的內容發送方式在手冊裡都有提供;
2.$message->subjuet('');是文件的標題
3.$message->to();發送給誰
這是一份在 $message
消息生成器實例中可以使用的方法清單:
$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();