gpt4 book ai didi

ThinkPHP框架实现的邮箱激活功能示例

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章ThinkPHP框架实现的邮箱激活功能示例由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

本文实例讲述了ThinkPHP框架实现的邮箱激活功能。分享给大家供大家参考,具体如下:

配置框架采用ThinkPHP3.1框架,如下所示:

配置过程图:

ThinkPHP框架实现的邮箱激活功能示例

1.修改配置如下:

<?phpreturn array(  //'配置项'=>'配置值'    'MAIL_ADDRESS'=>'shcg666@sohu.com', // 邮箱地址    'MAIL_SMTP'=>'smtp.sohu.com', // 邮箱SMTP服务器    'MAIL_LOGINNAME'=>'shcg666@sohu.com', // 邮箱登录帐号    'MAIL_PASSWORD'=>'******', // 邮箱密码);

2.在功能里面增加一个类 。

<?phpclass EmailAction extends Action{  /*  * microtime() 函数返回当前 Unix 时间戳和微秒数。  * mt_srand() 播种 Mersenne Twister 随机数生成器。从 PHP 4.2.0 版开始,seed 参数变为可选项,当该项为空时,会被设为随时数。  * 注释:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函数给随机数发生器播种,现已自动完成。  * pow — 指数表达式  */  //random()这个函数是我用来生成一个随机数的,$numeric = 0生成一个6位的大小写字母与数字混合的字符串。$numeric = 1生成一个6位数字的字符串  public function random($length = 6 , $numeric = 0) {  PHP_VERSION < '4.2.0' && mt_srand((double)microtime() * 1000000);  if($numeric) {    $hash = sprintf('%0'.$length.'d', mt_rand(0, pow(10, $length) - 1));  } else {    $hash = '';    $chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789abcdefghjkmnpqrstuvwxyz';    $max = strlen($chars) - 1;    for($i = 0; $i < $length; $i++) {      $hash .= $chars[mt_rand(0, $max)];    }  }  return $hash;  }  //发送邮件的方法  public function index(){    //生成6位激活码    $random = $this->random(6,0);    //获取本网站的域名,域名在config里面配置下.    //例如'domain' => 'http://write.blog.csdn.net',    $domain = C('domain');    //生成激活码模块地址    $url = $domain.U("Home/Email/activate")."/?yam=$random";    //将邮件地址和随机数放入session    session("shcg666@sohu.com","$random");    //发送邮件    SendMail("shcg666@sohu.com","这是邮件标题","将此网址复制到浏览框$url");  }}function SendMail($address,$title,$message){  //引入文件  vendor('PHPMailer.class#PHPMailer');  require("phpmailer/class.phpmailer.php");  require("phpmailer/class.smtp.php");  //实例化邮件类  $mail=new PHPMailer();  // 设置PHPMailer使用SMTP服务器发送Email  $mail->IsSMTP();  // 设置邮件的字符编码,若不指定,则为'UTF-8'  $mail->CharSet='UTF-8';  // 添加收件人地址,可以多次使用来添加多个收件人  $mail->AddAddress($address);  // 设置邮件正文  $mail->Body=$message;  // 设置邮件头的From字段。//发件人  $mail->From=C('MAIL_ADDRESS');  // 设置发件人名字  $mail->FromName='LilyRecruit';  // 设置邮件标题  $mail->Subject=$title;  // 设置SMTP服务器。  $mail->Host=C('MAIL_SMTP');  // 设置为"需要验证"  $mail->SMTPAuth=true;  // 设置用户名和密码。  $mail->Username=C('MAIL_LOGINNAME');  $mail->Password=C('MAIL_PASSWORD');  // 发送邮件。  return($mail->Send());}

3.导入的文件 。

在网上下载PHPMailer包将class.smtp.php和class.phpmailer.php无需任何改动,直接复制进来即可.

class.smtp.php文件点击此处本站下载.

class.phpmailer.php文件完整实例代码点击此处本站下载.

配置完成,具体的处理方式需要进一步改动.

4.常见邮件服务器(接收服务器和发送邮件服务器)地址 。

腾讯QQ邮箱 接收服务器:pop.qq.com 发送服务器:smtp.qq.com 。

网易126邮箱 接收服务器:pop3.126.com 发送服务器:smtp.126.com 。

网易163免费邮 接收服务器:pop.163.com 发送服务器:smtp.163.com 。

网易163VIP邮箱 接收服务器:pop.vip.163.com 发送服务器:smtp.vip.163.com 。

网易188财富邮 接收服务器:pop.188.com 发送服务器:smtp.188.com 。

网易yeah.net邮箱 接收服务器:pop.yeah.net 发送服务器:smtp.yeah.net 。

网易netease.com邮箱 接收服务器:pop.netease.com 发送服务器:smtp.netease.com 。

新浪收费邮箱 接收服务器:pop3.vip.sina.com 发送服务器:smtp.vip.sina.com 。

新浪免费邮箱 接收服务器:pop3.sina.com.cn 发送服务器:smtp.sina.com.cn 。

搜狐邮箱 接收服务器:pop3.sohu.com 发送服务器:smtp.sohu.com 。

21cn快感邮 接收服务器:vip.21cn.com 发送服务器:vip.21cn.com 。

21cn经济邮 接收服务器:pop.163.com 发送服务器:smtp.163.com 。

tom邮箱 接收服务器:pop.tom.com 发送服务器:smtp.tom.com 。

263邮箱 接收服务器:263.net 发送服务器:smtp.263.net 。

网易163.com邮箱 接收服务器:rwypop.china.com 发送服务器:rwypop.china.com 。

雅虎邮箱 接收服务器:pop.mail.yahoo.com 发送服务器:smtp.mail.yahoo.com 。

Gmail邮箱 接收服务器:pop.gmail.com 发送服务器:smtp.gmail.com 。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助.

最后此篇关于ThinkPHP框架实现的邮箱激活功能示例的文章就讲到这里了,如果你想了解更多关于ThinkPHP框架实现的邮箱激活功能示例的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com