PHPMailer 发送邮件提示 553 Mail from must equal authorized user 的原因是 SMTP 服务器用户名与发件人邮箱不一致,修改成相同即可解决这个问题。
/** *系统邮件发送函数 *@paramstring$tomail接收邮件者邮箱 *@paramstring$name接收邮件者名称 *@paramstring$subject邮件主题 *@paramstring$body邮件内容 *@paramstring$attachment附件列表 *@returnboolean *@authorstatic7 */ functionsend_mail($tomail,$name,$subject='',$body='',$attachment=null){ $mail=newPHPMailerPHPMailerPHPMailer(); $mail->CharSet='UTF-8'; $mail->IsSMTP(); $mail->SMTPDebug=0; $mail->SMTPAuth=true; $mail->SMTPSecure='ssl'; $mail->Host="smtp.163.com"; $mail->Port=465; $mail->Username="test@163.com";//SMTP服务器用户名 $mail->Password="******";//SMTP服务器密码与邮箱密码不同 $mail->SetFrom('test@163.com','测试邮件');//此处的邮箱应该与上面的SMTP服务器用户名一致 $replyEmail=''; $replyName=''; $mail->AddReplyTo($replyEmail,$replyName); $mail->Subject=$subject; $mail->MsgHTML($body); $mail->AddAddress($tomail,$name); if(is_array($attachment)){ foreach($attachmentas$file){ is_file($file)&&$mail->AddAttachment($file); } } return $mail->Send()?true:$mail->ErrorInfo; }
声明:1、本博客不从事任何主机及服务器租赁业务,不参与任何交易,也绝非中介。博客内容仅记录博主个人感兴趣的服务器测评结果及一些服务器相关的优惠活动,信息均摘自网络或来自服务商主动提供;所以对本博客提及的内容不作直接、间接、法定、约定的保证,博客内容也不具备任何参考价值及引导作用,访问者需自行甄别。2、访问本博客请务必遵守有关互联网的相关法律、规定与规则;不能利用本博客所提及的内容从事任何违法、违规操作;否则造成的一切后果由访问者自行承担。3、未成年人及不能独立承担法律责任的个人及群体请勿访问本博客。4、一旦您访问本博客,即表示您已经知晓并接受了以上声明通告。







