**step1:
邮件配置:**
config/mail.PHP:
return [
/*
1.用于配置默认的邮件发送驱动,Laravel支持多种邮件驱动方式:
包括smtp、Mailgun、Maildrill、Amazon SES、mail和sendmail,Mailgun和Amazon SES都是收费的;
2.Maildrill目前不支持中国区用户,这三个都是第三方邮件服务。
mail驱动使用PHP提供的mail函数发送,sendmail驱动通过Sendmail/Postfix(Linux)提供的命令发送邮件,smtp驱动通过支持ESMTP的SMTP发送邮件。
注:ESMTP即Extended SMTP, 是对标准 SMTP 协议进行的扩展,它与 SMTP 服务的区别仅仅是,使用 SMTP 发信不需要验证用户帐户,
而用 ESMTP 发信时,服务器会要求用户提供用户名和密码以便验证身份。
3.就目前状况来看,使用smtp是最明智的选择,mail不安全,sendmail需要安装配置Sendmail/Postfix,其他要么付费要么不能用。
下面其它配置的说明都基于driver是smtp。
*/
'driver' => env('MAIL_DRIVER', 'smtp'), //[smtp]
/*
host是邮箱所在主机,比如我们使用163邮箱,对应值是smtp.163.com,使用QQ邮箱的话,对应值是smtp.qq.com。
*/
'host' => env('MAIL_HOST', 'smtp.mailgun.org'), //[smtp.163.com]
/*
用于配置邮箱发送服务端口号,比如一般默认值是25,但如果设置SMTP使用SSL加密,该值为465。
*/
'port' => env('MAIL_PORT', 587), //[25]
/*
配置项包含address和name,前者表示发送邮箱,后者表示发送邮件使用的用户名。
*/
'from' => ['address' => '***@163.com', 'name' => null], //[['address' => '15*******9@163.com', 'name' => '15********9@163.com']]
/*
表示加密类型,可以设置为null表示不使用任何加密,也可以设置为tls/ssl。
*/
'encryption' => env('MAIL_ENCRYPTION', 'tls'), //[tls]
/*
表示邮箱账号,比如'***@163.com'[必要时参照from中的address值]
*/
'username' => env('MAIL_USERNAME'), //[15*******9@163.com]
/*
表示上述邮箱密码【网易163邮箱则为授权密码】。
*/
'password' => env('MAIL_PASSWORD'), //[r*******3]
/*
是在设置driver为sendmail时使用,用于指定sendmail命令路径。
*/
'sendmail' => '/usr/sbin/sendmail -bs',
/*
用于配置是否将邮件发送记录到日志中,默认为false则发送邮件不记录日志;
如果为true的话只记录日志不发送邮件,这一配置在本地开发中调试时很有用。
*/
'pretend' => false,
]
**step2:
ActiveController.php控制器:**
public function send() {
$data = ['uid'=>'1','activationcode'=>'irjwldsfg1843da','name'=>'xxx','content'=>'xbb','date'=>'2016-11-09'];
$flag = Mail::send('active_view',['data'=>$data],function($message){
$message->to('xxxxxxxx@163.com', 'Mr.xxx')->subject('欢迎注册我们的网站,请激活您的账号!');
});
if($flag){
// 发送成功处理
}else{
// 发送失败处理
}
}
**step3:
active_view.blade.PHP视图模板:**
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
</head>
<body>
<a href="{{URL('active?uid='.$data['uid'].'&activationcode='.$data['activationcode'])}}" target="_blank">点击激活你的账号</a>
</body>
</html>