当前位置:首页 > CMS教程 > Thinkphp > 列表

PHPMailer ThinkPHP实现自动发送邮件功能

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-25 15:52:37 浏览: 评论:0 

这篇文章主要为大家详细介绍了PHPMailer ThinkPHP实现自动发送邮件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

本文实例为大家分享了PHPMailer ThinkPHP自动发送邮件的具体代码,供大家参考,具体内容如下

1.下载PHPMailer类包,放入ThinkPHP的Vendor目录,这是ThinkPHP的第三方类库目录

2.然后在项目目录下common文件夹下,在common.PHP(ThinkPHP中此文件会自动被引用,如果没有,新建一个common.php)中新增调用发送邮件的函数:

  1. /********************************Email**********************************/ 
  2.  
  3. //邮发方法的定义 
  4. function s_mail($sendto, $title, $response) { 
  5.   //导入函数包的类class.phpmailer.php 
  6.   vendor ( "PHPMailer.class#phpmailer" ); 
  7.  
  8.   // 参数说明(发送到的邮箱地址, 邮件主题, 邮件内容, 接受方的的姓名) 
  9.   //填写要发送给管理员的邮件接受地址,请改为正确的地址 
  10.   $sendto_mail = $sendto; 
  11.   //邮件主题 
  12.   $subject = $title; 
  13.   //意见内容 
  14.   $body = $response; 
  15.   //发送邮件 
  16.   smtp_mail ( $sendto_mail, $subject, $body ); 
  17.  
  18. } 
  19.  
  20. //下面定义一个发送邮件的函数,已经测试通过。 
  21. //$sendto_email:邮件发送地址 
  22. //$subject:邮件主题 
  23. //$body:邮件正文内容 
  24. //$sendto_name邮件接受方的姓名,发送方起的名字。一般可省。 
  25. function smtp_mail($sendto_email, $subject = null, $body = null, $sendto_name = null) { 
  26.   //新建一个邮件发送类对象 
  27.   $mail = new PHPMailer (); 
  28.   // send via SMTP 
  29.   $mail->IsSMTP (); 
  30.   // SMTP 邮件服务器地址,这里需要替换为发送邮件的邮箱所在的邮件服务器地址 
  31.   $mail->Host = "smtp.qq.com"; 
  32.   //邮件服务器验证开 
  33.   $mail->SMTPAuth = true; 
  34.   // SMTP服务器上此邮箱的用户名,有的只需要@前面的部分,有的需要全名。请替换为正确的邮箱用户名 
  35.   $mail->Username = "xxxx@qq.com"; 
  36.   // SMTP服务器上该邮箱的密码,请替换为正确的密码 
  37.   $mail->Password = "xxxx"; 
  38.   // SMTP服务器上发送此邮件的邮箱,请替换为正确的邮箱 ,与$mail->Username 的值是对应的。 
  39.   $mail->From = "xxxx@qq.com"; 
  40.   // 真实发件人的姓名等信息,这里根据需要填写 
  41.   $mail->FromName = "[".date('Y-m-d H:i:s',time ())."]需求系统邮件"; 
  42.   // 这里指定字符集! 
  43.   $mail->CharSet = "utf-8"; 
  44.   $mail->Encoding = base64; 
  45.   // 收件人邮箱和姓名 
  46.   $mail->AddAddress ( $sendto_email, $sendto_name ); 
  47.   //这一项根据需要而设 
  48.   $mail->AddReplyTo ( 'xxxx@qq.com', "admin" ); 
  49.   // set word wrap 
  50.   //$mail->WordWrap = 50; 
  51.   // 附件处理 
  52.   //$mail->AddAttachment("/var/tmp/file.tar.gz"); 
  53.   //$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); 
  54.   // 发送 HTML邮件 
  55.   $mail->IsHTML ( false ); 
  56.   // 邮件主题 
  57.   $mail->Subject = $subject; 
  58.   // 邮件内容 
  59.   $mail->Body = $body; 
  60.   $mail->AltBody = "text/html"; 
  61.  
  62.   if (! $mail->Send ()) { 
  63.     return 0; 
  64.   } else { 
  65.     return 1; 
  66.   } 
  67. }

Tags: PHPMailer ThinkPHP发送邮件

分享到: