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';
}