开启邮箱服务
要使用邮箱服务就必须开启邮箱的 POP3 服务和 SMTP 服务,本教程演示 QQ邮箱的配置
-
登录你的 QQ邮箱,来到 设置->账户,开启下图中的服务
记录下生成的授权码!记录下生成的授权码!记录下生成的授权码!重要的事情说三遍!
配置
-
修改
.env
文件,复制以下内容进去MAIL_DRIVER="smtp" //邮件发送驱动 MAIL_HOST="smtp.qq.com" //邮箱所在主机,比如网易邮箱是 smpt.163.com MAIL_PORT=25 //邮箱发送服务端口号,比如一般默认值是25,但如果设置SMTP使用SSL加密,该值为465 MAIL_USERNAME=123456@qq.com //邮箱账号 MAIL_PASSWORD=abcdefg //刚刚生成的授权码 MAIL_ENCRYPTION=tls //加密类型,可以设置为null表示不使用任何加密,也可以设置为tls或ssl
-
修改
config/mail.php
文件'from' => [ 'address' => '123456@qq.com', //用来发送邮件的邮箱 'name' => '', //发送邮件使用的用户名 ],
创建邮件模板
在 resources/emails
创建一个模板文件 test.blade.php
,并复制以下内容进去
{{ $data['test1'] }} 这是测试 {{ $data['test2'] }}。
发送邮件
-
在
app/helpers.php
添加以下内容function sendMail($email,$data,$view){ Mail::send('emails.'.$view,['data'=>$data],function($message)use($email){ $message->to($email)->subject('【这是邮件标题】');; });
-
在你需要调用发送邮件的方法的地方添加以下代码
$email = '123456@qq.com'; //接受邮件的邮箱 $tempData = [ 'test1' => 'hello', //邮件模板变量,自定 'test2' => 'world', ]; $view = 'test'; //要使用的模板,比如这里的是刚刚创建的模板 test.blade.php sendMail($email,$tempData,$view);
邮件还支持 延时发送,添加附件,添加图片 的功能,这里就不展开了,详情可以参考官方文档
文档
laravel 邮件发送 官方文档:http://d.laravel-china.org/docs/5.3/mail