laravel 邮件功能

参考文档

laravel自带邮箱 功能使用

前置
composer require guzzlehttp/guzzle

.env文件 里有默认配置,要替换 !

MAIL_MAILER=smtp
MAIL_HOST=smtp.qq.com
MAIL_PORT=465
MAIL_USERNAME=邮箱
MAIL_PASSWORD=生成的密钥
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=邮箱

配置参考链接

使用

$res = MailController::send($request->email,['url'=>$reset_password_url],'mail.test');

   public static function send($to,$content,$view){

       // Mail::send()的返回值为空,所以可以其他方法进行判断
       Mail::send($view, $content, function ($message) use ($to){
           $message->to($to)->subject('重置密码');
       });
       // 返回的一个错误数组,利用此可以判断是否发送成功
       $data = Mail::failures();
       if (empty($data)){
           return true;
       }
       return false;

   }

其他方法

composer安装邮件类

composer require phpmailer/phpmailer

开启openssl扩展与sockets扩展

确认使用 phpinfo();查看

 extension=sockets

 extension=openssl

区别

phpmailer库相对于laravel自带的mail库简洁了不少,上手快且优雅,不过,laravel自带的mail库使用view更方便一些

posted @ 2023-06-02 17:32  列王纪  阅读(98)  评论(0)    收藏  举报