标签:邮箱 null uil 数组 ssl 文件的 生产 send 建议
POP3/SMTP/IMAP
,开通IMAP/SMTP
服务即可。MAIL_PASSWORD
需要它。smtp
配置邮箱。smtp
的服务器地址是smtp.163.com
, 开放端口是25
。参加网易邮箱说明。25
端口。465
,并开启ssl
配置。我使用的阿里云的服务器,就是个典型的案例。MAIL_PORT=465
MAIL_ENCRYPTION=ssl
MAIL_MAILER=smtp
MAIL_HOST=smtp.163.com
MAIL_PORT=25
MAIL_USERNAME=
MAIL_PASSWORD=RBVMZTRRKVBMHDSD
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=
MAIL_FROM_NAME="${APP_NAME}"
详细信息建议参加官方文档
php artisan make:mail AlertMsg
生产的邮寄类,在app/Mail
中,类内部的build中配置邮件模板。class AlertMsg extends Mailable
{
public function __construct()
{
//
}
public function build()
{
return $this->view(‘emails.alert‘);
}
如果,你的发件人都是同一个的话,可以在config/mail.php
中设置。
‘from‘ => [
‘address‘ => env(‘MAIL_FROM_ADDRESS‘, ‘hello@example.com‘),
‘name‘ => env(‘MAIL_FROM_NAME‘, ‘Example‘),
],
其实就是env文件中的MAIL_USERNAME
和MAIL_FROM_ADDRESS
两个配置。
MAIL_USERNAME=houxin
MAIL_FROM_ADDRESS=houxin@163.com
以上是我的配置,在这里配置你的发件人名称和发件人邮箱即可。
如果,我们需要频繁的修改发件人的话,修改发送类中的build
,添加->from
方法。
public function build()
{
return $this->from(‘houxin@163.com‘)->view(‘emails.alert‘);
}
在你的需要发送的控制器中使用mail类发送邮件
use Illuminate\Support\Facades\Mail;
// 测试发送邮件
public function index(){
Mail::to(‘1912481652@qq.com‘)->send(new AlertMsg);
}
to
的参数可以接收一个邮箱数组,意味着群发。像这样Mail::to([‘1912481652@qq.com‘, ‘21458225@qq.com‘])->send(new AlertMsg);
// 测试发送邮件
public function index(){
$data = [
‘code‘ =>‘500‘,
‘msg‘ =>‘Server error‘,
];
Mail::to([‘1919401652@qq.com‘])->send(new AlertMsg($data));
}
public $data;
public function __construct($data)
{
// 注册data为全局变量
$this->data = $data;
}
public function build()
{
return $this->view(‘emails.alert‘);
}
data
变量了。<p>编号:{{ $data[‘code‘] }}</p>
<p>消息:{{ $data[‘msg‘] }}</p>
subject
指定。如下,把邮件的标题指定为"警报"public function build()
{
return $this->subject(‘警报‘)->view(‘emails.alert‘);
}
.env
文件中的MAIL_FROM_NAME
是邮件发件人的名称,env中默认使用的"${APP_NAME}",也就是app名称。提示:这里提供了laravel邮箱的简单使用,如果需要定制的要求,建议参考官方文档。
更复杂的要求,请参见laravel文件的mail部分,点击文档地址查看
标签:邮箱 null uil 数组 ssl 文件的 生产 send 建议
原文地址:https://www.cnblogs.com/hxsen/p/12773638.html