laravel 屌炸天的插件:url:/maileclipse => https://github.com/Qoraiche/laravel-mail-editor/tree/2.x
composer require phpmailer/phpmailer
conposer 加载phpmalier类
或者composer update
"phpmailer/phpmailer": "~6.0"
如何QQ邮箱设置里面获取stmp授权码:点击查看
在该目录下建立index.php 内容如下:
<?phprequire "vendor/autoload.php";// 实例化PHPMailer核心类$mail = new \PHPMailer\PHPMailer\PHPMailer();// 是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式$mail->SMTPDebug = 1;// 使用smtp鉴权方式发送邮件$mail->isSMTP();// smtp需要鉴权 这个必须是true$mail->SMTPAuth = true;// 链接qq域名邮箱的服务器地址$mail->Host = 'smtp.qq.com';// 设置使用ssl加密方式登录鉴权$mail->SMTPSecure = 'ssl';// 设置ssl连接smtp服务器的远程服务器端口号$mail->Port = 465;// 设置发送的邮件的编码$mail->CharSet = 'UTF-8';// 设置发件人昵称 显示在收件人邮件的发件人邮箱地址前的发件人姓名$mail->FromName = 'liaosp';// smtp登录的账号 QQ邮箱即可$mail->Username = '*******@qq.com';// smtp登录的密码 使用生成的授权码 $mail->Password = '*********';// 设置发件人邮箱地址 同登录账号$mail->From = '*******@qq.com';// 邮件正文是否为html编码 注意此处是一个方法$mail->isHTML(true);// 设置收件人邮箱地址$mail->addAddress('********@qq.com');// 添加多个收件人 则多次调用方法即可//$mail->addAddress('********@163.com');// 添加该邮件的主题$mail->Subject = 'hello world';// 添加邮件正文$mail->Body = '<h1>Hello World</h1>';// 为该邮件添加附件//$mail->addAttachment('./example.pdf');// 发送邮件 返回状态$status = $mail->send();
运行, 就这么简单~~~~
如果是企业邮箱发送:
1.登录帐号,在客户端设置中,查看是否已经开启了SMTP服务。
2.Host 地址改为:smtp.exmail.qq.com
3.授权为你的登录密码。
根据实际业务进行封装
laravel Mail
.env 配置完全:
MAIL_DRIVER=smtpMAIL_HOST=smtp.qq.comMAIL_PORT=465MAIL_USERNAME=1194008361@qq.comMAIL_PASSWORD=dhbazscrpcqgigbgMAIL_ENCRYPTION=sslMAIL_FROM_NAME=1194008361@qq.comMAIL_FROM_ADDRESS=1194008361@qq.com
发送单条数据:
Mail::raw('关于汇报的工作', function ($message) { $to = '1194008361@qq.com'; $message->to($to)->subject('纯文本信息邮件测试');});
发送html数据:
$name = '廖帅'; // Mail::send()的返回值为空,所以可以其他方法进行判断 Mail::send('emails.test',['name'=>$name],function($message){ $to = '1194008361@qq.com'; $message ->to($to)->subject('邮件测试'); }); // 返回的一个错误数组,利用此可以判断是否发送成功 dd(Mail::failures());
在
resources/views/emails/test.blade.php
写入:
<!doctype html><html>{{$name}},收到请回复</body></html>