这里测一个邮件发送.在以后如果出现错误.比如异步任务,定时任务出现错误我们应该第一时间知道.而不是等傻逼用户反应了.没事看看日志才知道自己的逻辑出错.不能及时解决问题可能会造成很大的损失~手机短信很简单可以接入第三方短信.这里顺带一提如果用短信建议云之讯哈~很久之前注册过送了10块钱.发一次才0.01,何乐而不尝试呢.之前公司用的某里云的.很麻烦的注册流程.还收费群发邮件还审核....反正就是各种的让你不爽.随个人意愿吧.但是邮件就不同了不要钱嘿嘿嘿~.用163的作代发服务器吧从设置进入POP3/SMTP/IMAP
会让你设置授权吗.我这里设置我名字缩写加身份证后六位.我怕我忘了哈.
然后再回到POP3/SMTP/IMAP
可以看到服务器地址了
POP3服务器: pop.163.com
SMTP服务器: smtp.163.com
IMAP服务器: imap.163.com
第三方类库代码地址...
我把这个重命名
MySendMail.php
放到了App\Lib\Email
目录下.增加了命名空间.注视了最下面的测试示例namespace App\Lib\Email;
创建email_163.ini
smtp_host='smtp.163.com'
;授权用户账号
user_name='xxxxxxx@163.com'
;授权用户密码
user_pwd='xxxxxxx'
;发送人姓名
from_user='Server ALert'
;设置发件人
from='xxxxxxx@163.com'
;发送人邮箱.多个可以多次调用也可以数组
receiver='xxxxxxx@qq.com'
;receiver[]='qvbilam@163.com'
;抄送人邮箱,密送人Bcc也可以是数组.字符串的
cc='xxxxxxx@qq.com'
在测试控制器中添加
use App\Lib\Email\MySendMail;
public function email($data='Server Send Email Test')
{
$mail = new MySendMail();
// smtp
$mail->setServer(\Yaconf::get('email_163.smtp_host'), \Yaconf::get('email_163.user_name'), \Yaconf::get('email_163.user_pwd'));
$mail->setFrom(\Yaconf::get('email_163.from'));
$mail->setReceiver(\Yaconf::get('email_163.receiver'));
$mail->setCc(\Yaconf::get('email_163.cc'));
$mail->setMailInfo('test', $data . 'hello ~ i love you','');
$mail->sendMail();
}
就OK了