php mailer类调用远程SMTP服务器发送邮件实现方法

5年以前  |  阅读数:715 次  |  编程语言:PHP 

本文实例讲述了php mailer类调用远程SMTP服务器发送邮件实现方法。分享给大家供大家参考,具体如下:

php mailer 是一款很好用的php电子邮件发送类模块,可以调用本地的smtp发送电子邮件,也可以调用远程的smtp发送电子邮件,但是使用时需要注意一些事项,否则就会造成发送失败,或者根本不能调用的情况,本文就我在使用这个类时,遇到的问题和解决办法进行展开,简要说明一下php mailer的用法,及注意事项。

首先下载phpmailer类库文件,在这里下载,只需一个资源分。 下载地址: http://www.jb51.net/codes/27188.html

下载之后,将这个文件,即class.phpmailer.php 放到你的工程的某个目录下,在需要发送邮件的地方这样写:


    <?php
    require 'class.phpmailer.php';
    try {
      $mail = new PHPMailer(true);
      $body = file_get_contents('contents.html'); //邮件的内容写到contents.html页面里了
      $body = preg_replace('//////','', $body); //Strip backslashes
      $mail->IsSMTP(); // tell the class to use SMTP
      $mail->SMTPAuth  = true; // enable SMTP authentication
      $mail->Port = 25; // set the SMTP server port
      $mail->Host = "mail.yourdomain.com"; // 远程SMTP服务器
      $mail->Username = "yourname@yourdomain.com"; // 远程SMTP 服务器上的用户名
      $mail->Password  = "yourpassword"; // 你的远程SMTP 服务器上用户对应的密码
      //$mail->IsSendmail(); //告诉这个类使用Sendmail组件,使用的时候如果没有sendmail组建就要把这个注释掉,否则会有
      $mail->AddReplyTo("yourname@yourdomain.com","First Last");
      $mail->From    = "fromname@yourdomain.com";
      $mail->FromName  = "First Last";
      $to = "toname@domain.com";
      $mail->AddAddress($to);
      $mail->Subject = "First PHPMailer Message";
      $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
      $mail->WordWrap = 80; // set word wrap
      $mail->MsgHTML($body);
      $mail->IsHTML(true); // send as HTML
      $mail->Send();
      echo 'Message has been sent.';
    } catch (phpmailerException $e) {
      echo $e->errorMessage();
    }
    ?>

注意:上面那个$mail->IsSendmail(); 需要注释掉,否则如果没有sendmail组件的话,会提示 "Could not execute: /var/qmail/bin/sendmail "的错误!

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8