notus629
7/27/2017 - 11:32 PM

PHPMailer 使用,全面实例

PHPMailer 使用,全面实例

<?php
// phpmailer test program
 
// 加载这1个文件和加载下面2个文件的作用是等同的
require 'vendor/autoload.php';
 
//require_once 'class.phpmailer.php';
//require_once 'class.smtp.php';
 
$mail = new PHPMailer;
 
//$mail->SMTPDebug = 3;                      // Enable verbose debug output
$mail->isSMTP();                             // Set mailer to use SMTP
//$mail->CharSet = "utf8"                    // 编码格式为utf8,不设置编码的话,中文会出现乱码 (QQ 邮箱,似乎不设置也没太大问题)
//$mail->setLanguage('zh_cn');               // 设置错误中文提示
$mail->Host = "smtp.exmail.qq.com";          // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                      // Enable SMTP authentication
$mail->Username = 'bugber@bugber.com';       // SMTP username, 发送方的腾迅邮箱用户名
$mail->Password = 'XXXXXX';                  // SMTP password, 发送方的腾迅邮箱密码
$mail->SMTPSecure = 'ssl';                   // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465;                           // QQ 邮箱的 ssl 协议方式的端口号为 465
//$mail->Priority = 3;                       // 设置邮件优先级 1:高, 3:正常(默认), 5:低  
//$mail->WordWrap = 50;                      // 设置自动换行50个字符 
 
$mail->setFrom("bugber@bugber.com","Notus");         // 设置发件人信息,发件人处会显示为Notus(bugber@bugber.com),Notus当做名字显示
$mail->addAddress('hehe_xiao@qq.com', 'hehe_xiao');      // 设置收件人信息,如邮件格式说明中的收件人,显示为hehe_xiao(hehe_xiao@qq.com)
//$mail->addAddress('ellen@example.com');                // Name is optional,可添加多个收件人
//$mail->addReplyTo('info@example.com', 'Information');  // 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
//$mail->addCC('cc@example.com');                         // 设置邮件抄送人,可以只写地址,上述的设置也可以只写地址
//$mail->addBCC('bcc@example.com');                       // 设置秘密抄送人
//$mail->ConfirmReadingTo = 'bugber@bugber.com';       // 添加发送回执邮件地址,即当收件人打开邮件后,会询问是否发生回执  
 
//$mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
//$mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
 
$mail->isHTML(true);                                  // Set email format to HTML
 
$mail->Subject = '这是邮件的标题';
$mail->addEmbeddedImage('images/a.png', 'imgname'); // attach file logo.jpg, and later link to it using identfier logoimg
$mail->Body .= "<h1>测试邮件</h1>
    <p>This is a test picture: <img src='cid:imgname' /></p>";
$mail->AltBody = '不支持html的邮件内容:This is the body in plain text for non-HTML mail clients';
 
if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}