PHP使用PHPMailer发送邮件

2021-04-22 08:03 php实例 134 梁俊威

近期,受公司项目安排的影响,做外贸网站、亚马逊业务偏多,而老外们目前还比较流行使用邮箱的方式进行沟通,所以发送邮件的开发业务较多,下面记录一下使用PHPMailer发送邮件的方法。PHPMailer文件将上传至文章末尾。

将PHPMailer.php文件引入我们需要使用的PHP文件中。

// 自己修改一下路径
require_once 'lib/phpMailer.php';

封装成sendEmail方法方便调用

protected function sendEmail($to_email, $to_email_name,$reply_email,$reply_email_name, $to_email_title, $to_email_content){
    $mail = new \PHPMailer();
    
    // 使用SMTP服务
    $mail->isSMTP();
    
    // 编码格式为utf8,不设置编码的话,中文会出现乱码
    $mail->CharSet = "utf8";
    
    // 发送方的SMTP服务器地址
    $mail->Host = config('phpmailer.mailer_host');
    
    // 是否使用身份验证
    $mail->SMTPAuth = true;
    
    // 发送方的邮箱用户名,就是你申请163的SMTP服务使用的163邮箱
    $mail->Username = config('phpmailer.mailer_username');
    
    // 发送方的邮箱密码,注意用163邮箱这里填写的是“客户端授权密码”而不是邮箱的登录密码
    $mail->Password = config('phpmailer.mailer_password');
    
    // 使用ssl协议方式
    $mail->SMTPSecure = "ssl";
    
    // 163邮箱的ssl协议方式端口号是465/994;QQ的是465
    $mail->Port = 465;
    
    // 设置发件人信息,如邮件格式说明中的发件人,这里会显示为Mailer(xxxx@163.com),Mailer是当做名字显示
    $mail->setFrom(config('phpmailer.mailer_email'),config('phpmailer.mailer_name'));
    
    // 设置收件人信息,如邮件格式说明中的收件人,这里会显示为Liang(yyyy@163.com)
    $mail->addAddress($to_email,$to_email_name);
    
    // 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
    $mail->addReplyTo($reply_email,$reply_email_name);
    
    // 设置邮件抄送人,可以只写地址,上述的设置也可以只写地址(这个人也能收到邮件)
    //$mail->addCC("xxx@163.com");
    
    // 设置秘密抄送人(这个人也能收到邮件)
    //$mail->addBCC("xxx@163.com");
    
    // 添加附件
    //$mail->addAttachment("README");
    
    // 邮件标题
    $mail->Subject = $to_email_title;
    
    // 邮件正文
    $mail->Body = $to_email_content;
    
    // 这个是设置纯文本方式显示的正文内容,如果不支持Html方式,就会用到这个,基本无用
    //$mail->AltBody = "This is the plain text纯文本";
    
    if(!$mail->send()){
        // 发送邮件
        echo "Message could not be sent.";
        echo "Mailer Error: ".$mail->ErrorInfo;
        // 输出错误信息
    
    }else{
    
        //echo '发送成功,执行业务逻辑';
    }
}


若无特殊说明,本站点所有内容均为原创,转载请说明出处!

原文链接:https://www.ljwei.com.cn/read/258.html

QQ客服

QQ客服

微信客服

微信客服

微信客服二维码
意见反馈

意见反馈

一键置顶