php配置email支持_PHPMailer配置163邮箱发送邮件

今天开发的功能中,需要实现发送邮件通知提醒,而PHP端使用的是PHPMailer这个第三方库来实现的,发送者邮件使用的是网易的163邮箱,但是在调试的时候遇到了问题,那就是一直报没有权限。最后才明白原因,原来是这个163邮箱并没有开启有授权码,如果没有开启,则不能在第三方邮件客户端使用。

开启POP3服务如下图所示,登录到163邮箱,然后看到设置选项,点击它,就会弹出如下的页面,然后点击圈出来的菜单项:

然后进入到此页面,这里的截图是已经开启完成了的,开启完成前,是灰色的选项,点击的时候会弹出设置授权码,只有设置了授权码,才能开启。

设置授权码完成后,就真正地开启了POP3服务了,到此,邮件端处理完毕了。

实现PHPMailer发邮件function send_mail($to = '', $name = '', $subject = '', $body = '', $attachment = null)

{

$config = config('mail');

// dump($config);exit;

$url = vendor("phpmailer.phpmailer.PHPMailerAutoload");

$mail = new PHPMailer();

$mail->CharSet = 'UTF-8';

$mail->IsSMTP();

$mail->SMTPDebug = 0;

$mail->SMTPAuth = true;

$mail->SMTPSecure = 'ssl';

// 163邮箱是smtp.163.com

$mail->Host = $config['smtp_host'];

// 465端口

$mail->Port = $config['smtp_port'];

// 上面所开通POP3服务的163邮箱账号

$mail->Username = $config['smtp_user'];

// 上面所设置的授权码

$mail->Password = $config['smtp_password'];

$mail->SetFrom($config['from'], $config['from_name']);

$replyEmail = $config['from'];

$replyName  = $config['from_name'];

$mail->AddReplyTo($replyEmail, $replyName);

$mail->Subject = $subject;

$mail->MsgHTML($body);

$mail->AddAddress($to, $name);

// 抄送

if ($config['chaoxong_email']) {

$mail->addCC($config['chaoxong_email']);

}

// 添加附件

if (is_array($attachment)) {

foreach ($attachment as $file) {

is_file($file) && $mail->AddAttachment($file);

}

}

return $mail->Send() ? true : $mail->ErrorInfo;

}

注意事项

填写smtp_password时一定要注意,如果是163邮箱,一定要填写授权码;如果是阿里企业邮箱,填写的是登录账号的密码。

承接:ThinkPHP项目开发、网站项目开发、微信项目开发、微信小程序项目开发、App开发,欢迎联系标哥QQ632840804

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值