phpmailer邮件类下载(转)

PHPMailer是一个用于发送电子邮件的PHP函数包。它提供的功能包括:
*.在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址
*.支持多种邮件编码包括:8bit,base64,binary和quoted-printable
*.支持SMTP验证
*.支持冗余SMTP服务器
*.支持带附件的邮件和Html格式的邮件
*.自定义邮件头
*.支持在邮件中嵌入图片
*.调试灵活
*.经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等
*.可运行在任何平台之上

调用方法:

01. require("class.phpmailer.php");
02.  
03. $mail = new PHPMailer();
04.  
05. $mail->IsSMTP();                 // 启用SMTP
06. $mail->Host = "smtp1.example.com";           //SMTP服务器
07. $mail->SMTPAuth = true;                  //开启SMTP认证
08. $mail->Username = "name@example.com";            // SMTP用户名
09. $mail->Password = "password";                // SMTP密码
10.  
11. $mail->From = "from@example.com";            //发件人地址
12. $mail->FromName = "Mailer";              //发件人
13. $mail->AddAddress("josh@example.net", "Josh Adams"); //添加收件人
14. $mail->AddAddress("ellen@example.com");
15. $mail->AddReplyTo("info@example.com", "Information");    //回复地址
16. $mail->WordWrap = 50;                    //设置每行字符长度
17. /** 附件设置
18. $mail->AddAttachment("/var/tmp/file.tar.gz");        // 添加附件
19. $mail->AddAttachment("/tmp/image.jpg", "new.jpg");   // 添加附件,并指定名称
20. */
21. $mail->IsHTML(true);                 // 是否HTML格式邮件
22.  
23. $mail->Subject = "Here is the subject";          //邮件主题
24. $mail->Body    = "This is the HTML message body <b>in bold!</b>";        //邮件内容
25. $mail->AltBody = "This is the body in plain text for non-HTML mail clients"; //邮件正文不支持HTML的备用显示
26.  
27. if(!$mail->Send())
28. {
29. echo "Message could not be sent. <p>";
30. echo "Mailer Error: " . $mail->ErrorInfo;
31. exit;
32. }
33.  
34. echo "Message has been sent";

关于邮件乱码的解决办法:

邮件的中文会出现乱码主要是编码没有设置好。

设置方法如下:

1. $mail->IsHTML(true);                 // 是否HTML格式邮件
2. $mail->CharSet = "utf-8";                // 这里指定字符集!
3. $mail->Encoding = "base64";

但是请注意,这并不能完全保证你收到的邮件是正确的编码。在发送html邮件时,我们需要发送一个完整的html文档。

如:

<html><head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head>
<body>含中文的内容</body>
</html> 

附件下载:
PHPMailer.zip 114.94KB

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PHPMailer邮件的使用 第一步:需要下载PHPMailer文件包phpmailer-1.73.tar.gz 来自开源社区: http://phpmailer.sourceforge.net/ 第二步:确认你的服务器系统已经支持socket 如下图,通过phpinfo();查看是否支持sockets   如果没有这一项就请注意: socket 是属于PHP扩展部分,编译时必须给定一个用于./configure --enable-sockets 的配置选项。 第三步:把文件解压到你的web服务器目录下,调用就可以了,说明:首先包含 class.phpmailer.php,然后创建对象,设置参数,调用成员函数。具体请见下面的示例代码: <?php require("phpmailer/class.phpmailer.php"); function smtp_mail ( $sendto_email, $subject, $body, $extra_hdrs, $user_name) { $mail = new PHPMailer(); $mail->IsSMTP(); // send via SMTP $mail->Host = "200.162.244.66"; // SMTP servers $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = "yourmail"; // SMTP username 注意:普通邮件认证不需要加 @域名 $mail->Password = "mailPassword"; // SMTP password $mail->From = "[email protected]"; // 发件人邮箱 $mail->FromName = "163.com管理员"; // 发件人 $mail->CharSet = "GB2312"; // 这里指定字符集! $mail->Encoding = "base64"; $mail->AddAddress($sendto_email,"username"); // 收件人邮箱和姓名 $mail->AddReplyTo("[email protected]","163.com"); //$mail->WordWrap = 50; // set word wrap //$mail->AddAttachment("/var/tmp/file.tar.gz"); // attachment //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); $mail->IsHTML(true); // send as HTML // 邮件主题 $mail->Subject = $subject; // 邮件内容 $mail->Body = ' <html><head> <meta http-equiv="Content-Language" content="zh-cn"> <meta http-equiv="Content-Type" content="text/html; charset=GB2312"></head> <body> 欢迎来到<a href="http://www.163.com">http://www.163.com</a> <br /><br /> 感谢您注册为本站会员!<br /><br /> </body> </html> '; $mail->AltBody ="text/html"; if(!$mail->Send()) { echo "邮件发送有误 <p>"; echo "邮件错误信息: " . $mail->ErrorInfo; exit; } else { echo "$user_name 邮件发送成功!<br />"; } } // 参数说明(发送到, 邮件主题, 邮件内容, 附加信息, 用户名) smtp_mail('[email protected]', '欢迎来到163.com!', 'NULL', '163.com', 'username'); ?> 要注意的内容:   1. 邮件的字符集设置, $mail->CharSet = "GB2312"; // 这里指定字符集!在这里我只指定为GB2312因为这样Outlook能正常显示邮件主题,我尝试过设为utf-8,但在Outlook下显示乱码。   2. 如果是发送html格式的邮件,那么记得也指定为<meta http-equiv="Content-Type" content="text/html; charset=GB2312">   3. 如果你想用它来群发邮件的话,记得修改包含文件函数,如:   require("phpmailer/class.phpmailer.php");   改为   require_once("phpmailer/class.phpmailer.php");   否则的话会产生的重定义。 //使用心得 用sina的刚注册就可以发送 $mail->Host = "smtp.sina.com"; // SMTP servers 用163的刚注册不能发送,得用注册时间长的才可以用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值