PHPMailer 发送邮件(含详细介绍及使用方法说明)

jopen 8年前

PHPMailer 也是一个功能强大的邮件类

PHPMailer的主要功能特点:

  1. 支持邮件 s/mime加密的数字签名
  2. 支持邮件多个 TOs, CCs, BCCs and REPLY-TOs
  3. 可以工作在任何服务器平台,所以不用担心WIN平台无法发送邮件的问题的
  4. 支持文本/HTML格式邮件
  5. 可以嵌入image图像
  6. 对于邮件客户端不支持HTML阅读的进行支持
  7. 功能强大的发送邮件调试功能debug
  8. 自定义邮件header
  9. 冗余SMTP服务器支持
  10. 支持8bit, base64, binary, and quoted-printable 编码
  11. 文字自动换行
  12. 支持多附件发送功能
  13. 支持SMTP服务器验证功能
  14. Sendmail, qmail, Postfix, Gmail, Imail, Exchange 等平台测试成功
  15. 提供的下载文件中,包括内容详细的说明文档及示例说明,所以不用担心难于上手的问题!
  16. 非常小巧、简单、方便、快捷

以上资料由Jiucool 翻译自phpmailer 官网,转载请注明!

PHPMailer的使用(这里以使用gmail smtp发送邮件为例,当然也支持sendmail  pop 等其他方式):

  1. 首先到http://phpmailer.worxware.com/ 下载最新版本的程序包
  2. 下载完成后,找到class.phpmailer. 、class.smtp.php两个类放到自己的目录下!
  3. 然后新建一个php文件这里命名为:phpmail_jiucool.php
  4. phpmail_jiucool.php内容如下:

我直接将邮件发送模块写成一个函数postmail_jiucool_com(),大家使用的时候直接调用该函数即可,函数内容为:

function postmail_jiucool_com($to,$subject = "",$body = ""){      //Author:Jiucool WebSite: http://www.jiucool.com       //$to 表示收件人地址 $subject 表示邮件标题 $body表示邮件正文      //error_reporting(E_ALL);      error_reporting(E_STRICT);      date_default_timezone_set("Asia/Shanghai");//设定时区东八区      require_once('class.phpmailer.php');      include("class.smtp.php");       $mail             = new PHPMailer(); //new一个PHPMailer对象出来      $body             = eregi_replace("[\]",'',$body); //对邮件内容进行必要的过滤      $mail->CharSet ="UTF-8";//设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码      $mail->IsSMTP(); // 设定使用SMTP服务      $mail->SMTPDebug  = 1;                     // 启用SMTP调试功能                                             // 1 = errors and messages                                             // 2 = messages only      $mail->SMTPAuth   = true;                  // 启用 SMTP 验证功能      $mail->SMTPSecure = "ssl";                 // 安全协议      $mail->Host       = "smtp.googlemail.com";      // SMTP 服务器      $mail->Port       = 465;                   // SMTP服务器的端口号      $mail->Username   = "SMTP服务器用户名";  // SMTP服务器用户名      $mail->Password   = "SMTP服务器密码";            // SMTP服务器密码      $mail->SetFrom('发件人地址,如admin#jiucool.com #换成@', '发件人名称');      $mail->AddReplyTo("邮件回复地址,如admin#jiucool.com #换成@","邮件回复人的名称");      $mail->Subject    = $subject;      $mail->AltBody    = "To view the message, please use an HTML compatible email viewer! - From www.jiucool.com"; // optional, comment out and test      $mail->MsgHTML($body);      $address = $to;      $mail->AddAddress($address, "收件人名称");      //$mail->AddAttachment("images/phpmailer.gif");      // attachment       //$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment      if(!$mail->Send()) {          echo "Mailer Error: " . $mail->ErrorInfo;      } else {          echo "Message sent!恭喜,邮件发送成功!";          }      }