phpmailer的基本使用

phpmailer是php中发送邮件的第三方类库,需要通过composer安装后使用

  1. phpmailer的安装
    通过composer 安装 PHPmailer,在项目的根目录下执行下方命令即可安装

    composer require phpmailer/phpmailer

    或者直接从phpmailer的github中下载使用(phpmailer)

  2. phpmailer的使用(以下代码来自phpmailer的示例)

    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\SMTP;
    use PHPMailer\PHPMailer\Exception;
    //如果不是框架且是使用composer安装的话则通过下面代码执行自动加载
    //require 'vendor/autoload.php';
    $host = 'smtp.163.com';//发件服务器
    $mail = 'sendtest@163.com';//发件邮箱
    $password = 'TESTPASSWORD';//密码(SMTP秘钥)
    $port = 465;//端口号
    $recipients = 'recipients@163.com';//收件人
    $title = '邮件标题';//邮件标题
    $body = '<b>这是邮件内容可使用html美化</b>';//邮件内容
    $text_body = 'This is the body in plain text for non-HTML mail clients(当客户端无法查看html时显示此内容)';//文本内容
    $mail = new PHPMailer(true);
    try {
     //Server settings
     $mail->SMTPDebug = SMTP::DEBUG_OFF;//日志开关
     $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;//开启TLS加密
     $mail->isSMTP();//使用SMTP协议发送邮件
     $mail->CharSet  = "UTF-8";//邮件字符集
     $mail->SMTPAuth   = true;//SMTP验证
     $mail->isHTML(true);//设置邮件格式为HTML
    
     $mail->Host       = $host;//设置SMTP发送邮件的服务器地址
     $mail->Username   = $mail;//发件账号
     $mail->Password   = $password;//发件授权密码
     $mail->Port       = $port;//发送邮件的端口
     $mail->setFrom($mail, 'Mailer');//发件人信息(第二个可选参数为备注名)
     $mail->addAddress($recipients, 'Joe User');//添加收件人(第二个参数可选为备注名,可多次调用此方法进行多发)
     $mail->Subject = $title;//邮件主题
     $mail->Body    = $body;//HTML内容
     $mail->AltBody = $text_body;//纯文本内容(客户端无法查看html时显示此内容)
    
     $mail->send();
     echo '邮件发送成功';
    } catch (Exception $e) {
     echo "邮件发送失败,错误提示: {$mail->ErrorInfo}";
    }
  3. 其他参数(可根据以下参数添加其他功能)

     $mail->addReplyTo('info@example.com', 'Information');//回复地址,用户回复发送者邮件时自动分发给此邮箱
     $mail->addCC('cc@example.com');//添加抄送
     $mail->addBCC('bcc@example.com');//添加密送
     $mail->addAttachment(root_path().'image.png');//添加附件(名字参数可选)
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!