位置: IT常识 - 正文

PHP中ThinkPhp框架的token使用(thinkphp框架怎么用)

编辑:rootadmin

推荐整理分享PHP中ThinkPhp框架的token使用(thinkphp框架怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp3.2框架,thinkphp5.0框架,thinkphp框架设计原理,thinkphp框架设计原理,php thinkphp框架,thinkphp5.0框架,thinkphp3.2框架,thinkphp5.0框架,内容如对您有帮助,希望把文章链接给更多的朋友!

在做登录信息核对时,面对源源不断的数据比对,都会给服务器造成一定的压力。对于我们常用的ThinkPhp框架也会有这样的困扰。不过有一种方法可以解决这类问题,那就是Token的作用。

一、token在ThinkPhp框架的使用

1.首先在数据库的 users 表中添加两个字段token、time_out

PHP中ThinkPhp框架的token使用(thinkphp框架怎么用)

token 用于存储用户的 token

time_out 用于设置用户 token 的过期时间

2.创建函数

checkToekn($token)

函数用于检验 token 是否存在, 并且更新 token。

publicfunctioncheckToken($token){$user=new\app\index\model\Users();$res=$user->field('time_out')->where('token',$token)->select();if(!empty($res)){//dump(time()-$res[0]['time_out']);if(time()-$res[0]['time_out']>0){return90003;//token长时间未使用而过期,需重新登陆}$new_time_out=time()+604800;//604800是七天$res=$user->isUpdate(true)->where('token',$token)->update(['time_out'=>$new_time_out]);if($res){return90001;//token验证成功,time_out刷新成功,可以获取接口信息}}return90002;//token错误验证失败}

3.创建函数

douserLogin($username,$password)

用于验证用户名密码, 并登陆, 返回 token 信息。

publicfunctiondouserLogin(){$user=new\app\index\model\Users();$userisset=$user->where('username',$username)->find();if($userisset==null){returnjson_decode('{"user":"'.$username.'","code":"400","msg":"用户不存在"}');}else{$userpsisset=$user->where('username',$username)->where('password',sha1(md5($password)))->find();if($userpsisset==null){returnjson_decode('{"user":"'.$username.'","code":"401","msg":"密码错误"}');}else{//session('user',$username);$token=$this->makeToken();$time_out=strtotime("+7days");$userinfo=['time_out'=>$new_time_out,'token'=>$token];$res=$user->isUpdate(true)->where('username',$username)->update($userinfo);if($res){returnjson_decode('{"user":"'.$username.'","toekn":'.$token.'"code":"0","msg":"登录成功"}');}}}}

二、Token的概念

token是客户端频繁向服务器端请求数据,服务器频繁的去数据库查询用户名和密码判断用户名和密码正确与否,并作出相应的提示,在这样的背景下,token便应运而生了。

本文链接地址:https://www.jiuchutong.com/zhishi/304503.html 转载请保留说明!

上一篇:python操作微信客户端:WechatPCAPI库实现自动化回复(python 微信)

下一篇:mysql InnoDB的四种锁定范围(mysql ndb innodb)

  • 居民企业投资收益免征企业所得税
  • 非盈利组织确认及所得税汇算怎么做
  • 税收减免属于什么收入
  • 财务状况说明表财务报表有什么区别
  • 房地产开发公司排名
  • 企业所得税的营业成本
  • 税控盘服务商
  • 回单结算卡丢失了严重吗
  • 申报后发现成本算错了
  • 幼儿园属于小型幼儿吗
  • 没经营的个体户营业执照怎么注销
  • 抵扣税控盘维护费会计分录
  • 地税服务业发票税率多少
  • 小规模外贸公司
  • 发票选择确认平台怎么选
  • 慈善会可以开什么票据
  • 增值税需要计提吗
  • 缴纳社保需要什么东西
  • 房租发票税金谁承担
  • 贷款损失准备如何提取
  • 缴纳残保金和工龄有关吗
  • 进项税额加计抵减怎么做分录
  • windows11我的电脑怎么放到桌面
  • 分红个人所得税在哪里查询
  • 企业备用金多久还款
  • 所有者权益会计科目借贷方向
  • 应缴纳个人所得税的是托儿补助费
  • 可供出售金融资产现在叫什么
  • PHP:imagesetstyle()的用法_GD库图像处理函数
  • 房产税具体内容
  • 大西洋,一望无际的海面
  • vue3 element ui
  • php教程100
  • 发票密码什么意思
  • 有形动产的租赁增值税税率是多少
  • 命令行find
  • springboot自动配置的注解
  • 餐饮店库存盘点表
  • 公账转给员工工资
  • 预提和计提
  • 收回多发的工资在上缴财政,可以用应缴财政款科目吗
  • 免抵退税额怎么计算城建税
  • python 记录日志
  • 一般纳税人不抵扣怎样交税
  • 赠品怎么做
  • 独立核算的分公司可以汇总纳税吗
  • 教你如何看懂标签
  • 合伙企业可以列入法人吗
  • 会计分录税金及附加有哪些
  • 材料的采购成本构成
  • 计入税金及附加的税种顺口溜
  • 未开票的收入如何申报增值税
  • 安装调试费属于劳务还是服务
  • 从农民个人手里取出钱
  • 购入钢材
  • 公司之间借款计入什么科目
  • 企业存货借款利息怎么算
  • 小规模纳税人差额纳税申报表
  • 停车费怎么入账会计分录
  • 从业人数和资产总额指标,应按企业
  • 农产品进项税额会计分录
  • 生产成本和主营业务收入的关系
  • 一个基于口令的用户身份认证基本过程是怎样的?
  • win10关掉搜索
  • .exe是什么软件
  • win7如何创建新桌面
  • win8系统桌面图标怎么变小
  • 注意 Win/WP8.1开发者账户现已迁移到全新Win10开发者中心仪表盘
  • 联想电脑win7系统开机修改开机密码
  • win7旗舰版如何升级到win10
  • win8开机启动项
  • Win10双显卡怎么切换到独立显卡
  • 微软为什么这么贵
  • node管理工具
  • 学习标准——笔记
  • vmwareUbuntu虚拟机硬盘扩容
  • 前端跑马灯实现
  • jquery easyui datagrid实现增加,修改,删除方法总结
  • 建筑企业如何
  • 日照公交305发车时间表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设