phpmailer,smtp发送邮件实例(转)

时间:2022-09-24 13:54:14
一,用phpmailer发送邮件
查看复制打印?
<?php  
include "class.phpmailer.php";    //包函邮件发送类  
  
//邮件发送  
function send_mail($frommail,$tomail,$subject,$body,$ccmail,$bccmail) {  
 $mail = new PHPMailer();  
 $mail->IsSMTP();                            // 经smtp发送  
 $mail->Host     = "smtp.163.com";           // SMTP 服务器  
 $mail->SMTPAuth = true;                     // 打开SMTP 认证  
 $mail->Username = "zhangyinghf@163.com";    // 用户名  
 $mail->Password = "**********";          // 密码  
 $mail->From     = $frommail;                  // 发信人  
 $mail->FromName = "suport of 51yip";        // 发信人别名  
 $mail->AddAddress($tomail);                 // 收信人  
 if(!emptyempty($ccmail)){  
 $mail->AddCC($ccmail);                    // cc收信人  
 }  
 if(!emptyempty($bccmail)){  
 $mail->AddCC($bccmail);                   // bcc收信人  
 }  
 $mail->WordWrap = 50;  
 $mail->IsHTML(true);                            // 以html方式发送  
 $mail->Subject  = $subject;                 // 邮件标题  
 $mail->Body     = $body;                    // 邮件内空  
 $mail->AltBody  =  "请使用HTML方式查看邮件。";  
 return $mail->Send();  
}  
  
$result= send_mail("zhangyinghf@163.com","xtaying@gmail.com","test","test");  
?>  
phpmailer的功能很多,非常的全面,你可以打开class.phpmailer.php文件看一下,他里面带了好多功能,发邮件常用的功能它都有。大致如下:
在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址
支持多种邮件编码包括:8bit,base64,binary和quoted-printable
支持SMTP验证
支持冗余SMTP服务器
支持带附件的邮件和Html格式的邮件
自定义邮件头
支持在邮件中嵌入图片
调试灵活
经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等
可运行在任何平台之上
二,用smtp发送邮件
查看复制打印?
<?php  
include "smtp.php";  
  
$smtpserver = "smtp.163.com";                     //SMTP服务器  
$smtpserverport = 25;                             //SMTP服务器端口  
$smtpusermail = "zhangyinghf@163.com";            //SMTP服务器的用户邮箱  
$smtpuser = "zhangyinghf@163.com";                //SMTP服务器的用户帐号  
$smtppass = "*********";                      //SMTP服务器的用户密码  
$smtpemailto = "xtaying@gmail.com";               //发送给谁  
  
$mailsubject = "账号分配";                                                    //邮件主题  
$mailbody = "<h1>this is a test";                //邮件内容  
$mailtype = "HTML";                              //邮件格式(HTML/TXT),TXT为文本邮件  
  
$smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.  
$smtp->debug = true;//是否显示发送的调试信息  
$mailsubject = mb_convert_encoding($mailsubject, "gb2312", "utf-8");  
$mailbody = mb_convert_encoding($mailbody, "gb2312", "utf-8");  
$result=    $smtp->sendmail($smtpemailto, $smtpusermail,$mailsubject, $mailbody, $mailtype);  
?>  
smtp的功能少多了,不过能满足基本的需求。