thinkphp 3.2 发送邮件(Phpmailer)
1.在该模板下Conmon模块函数公共目录新建一个function.php
<?php function Sendemail(){ vendor('PHPMailer.class#phpmailer'); //从PHPMailer目录导class.phpmailer.php类文件 //示例化PHPMailer核心类 $mail = new PHPMailer(); //是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式 $mail->SMTPDebug = 1; //使用smtp鉴权方式发送邮件,当然你可以选择pop方式 sendmail方式等 本文不做详解 //可以参考http://phpmailer.github.io/PHPMailer/当中的详细介绍 $mail->isSMTP(); //smtp需要鉴权 这个必须是true $mail->SMTPAuth=true; //设置ssl连接smtp服务器的远程服务器端口号 可选465或587 $mail->Port =; //链接域名邮箱的服务器地址 $mail->Host = ''; //smtp登录的账号 这里填入字符串格式的qq号即可 $mail->Username =''; //smtp登录的密码 这里填入“独立密码” 若为设置“独立密码”则填入登录qq的密码 建议设置“独立密码” $mail->Password = ''; $mail->From = ""; //设置使用ssl加密方式登录鉴权 $mail->SMTPSecure = 'tls'; //设置发件人姓名(昵称) 任意内容,显示在收件人邮件的发件人邮箱地址前的发件人姓名 $mail->FromName = ''; $mail->CharSet = "utf-8"; $mail->AddAddress (); //邮件正文是否为html编码 注意此处是一个方法 不再是属性 true或false $mail->isHTML(true); //添加该邮件的主题 $mail->Subject = ''; //添加邮件正文 上方将isHTML设置成了true,则可以是完整的html字符串 如:使用file_get_contents函数读取本地的html文件 $mail->Body = ''; $mail->AltBody = "text/html"; //PS:经过测试,要是收件人不存在,若不出现错误依然返回true 也就是说在发送之前 自己需要些方法实现检测该邮箱是否真实有效 $mail->send(); } ?>
2.将下载好的PHPMailer解压到ThinkPHP\Library\Vendor
3.在控制器中直接可以调用此方法
public function phpmailer(){ if(Sendemail()){ echo '发送成功'; }else{ echo '发送失败'; } }