使用第三方sdk PHPMailer实现发送电子邮件步骤:
参考地址:https://blog.csdn.net/weixin_42122979/article/details/80806283
1.将PHPMailer从git下载下来以后在tp5框架中的extend文件夹下创建PHPMailer文件夹,间下载的各个文件放到PHPMailer文件下面,然后将各个文件的namespace改为PHPMailer;
2.服务器配置需要将php.ini中的extension=openssl前边的“;”去掉
3;重启服务器或者重启php服务
4.代码实现邮件发送功能:
public function send_email($email_address,$suggestion,$kindergarten_name){
$mail = new PHPMailer();
//收件人
$toemail = $email_address;
//使用SMTP服务
$mail->isSMTP();
//编码格式为utf8,不设置编码的话,中文会出现乱码
$mail->CharSet="utf8";
// 发送方的SMTP服务器地址
$mail->Host="smtp.163.com";
// 是否使用身份验证
$mail->SMTPAuth = true;
// 发送方的163邮箱用户名,就是你申请163的SMTP服务使用的163邮箱
$mail->Username = "AJ_anjiafinance@163.com";
// 发送方的邮箱密码,注意用163邮箱这里填写的是“客户端授权密码”而不是邮箱的登录密码!
$mail->Password="aj1234567";
// 使用ssl协议方式
$mail->SMTPSecure = 'ssl';
// 163邮箱的ssl协议方式端口号是465/994
$mail->Port=465;
// 设置发件人信息,如邮件格式说明中的发件人,这里会显示为Mailer(xxxx@163.com),Mailer是当做名字显示
$mail->setFrom("AJ_anjiafinance@163.com",$kindergarten_name);
// 设置收件人信息,如邮件格式说明中的收件人,这里会显示为Liang(yyyy@163.com)
$mail->addAddress($toemail,'');
// 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
$mail->addReplyTo("AJ_anjiafinance@163.com",$kindergarten_name);
// 邮件标题
$mail->Subject="意见反馈";
$mail->Body=$suggestion;
if (!$mail->send()){// 发送邮件
// echo '发送失败';
echo json_encode(array(
'code'=>'1',
'msg'=>'发送失败'
));
}else{
// echo '发送成功';
echo json_encode(array(
'code'=>'1',
'msg'=>'发送成功'
));
}
}
网友评论