位置: 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)

  • 山东健康码金边消失了多久显示出来(山东健康码金边消失了怎么恢复)

    山东健康码金边消失了多久显示出来(山东健康码金边消失了怎么恢复)

  • 怎么把桌面文件放到D盘(怎么把桌面文件删除)

    怎么把桌面文件放到D盘(怎么把桌面文件删除)

  • 萤石云怎么删除一段录像记录(萤石云怎么删除分享的好友)

    萤石云怎么删除一段录像记录(萤石云怎么删除分享的好友)

  • 怎样跳过微信低版本提示登录(微信怎么跳过版本过低)

    怎样跳过微信低版本提示登录(微信怎么跳过版本过低)

  • 荣耀20pro支持防水防尘吗(荣耀20pro有没有防抖功能)

    荣耀20pro支持防水防尘吗(荣耀20pro有没有防抖功能)

  • 钉钉中如何在群中修改个人名称(钉钉群里怎样)

    钉钉中如何在群中修改个人名称(钉钉群里怎样)

  • 如何在qq中创群(如何在qq上创群)

    如何在qq中创群(如何在qq上创群)

  • 魅族16th重量(魅族16th 16th plus重量)

    魅族16th重量(魅族16th 16th plus重量)

  • 微信和手环步数不统一(微信和手环步数不一样)

    微信和手环步数不统一(微信和手环步数不一样)

  • 为什么抖音看不到在线(为什么抖音看不到别人的评论)

    为什么抖音看不到在线(为什么抖音看不到别人的评论)

  • 苹果ipad有哪些型号(苹果ipad有哪些系列)

    苹果ipad有哪些型号(苹果ipad有哪些系列)

  • 苹果手机充电头发烫正常吗(苹果手机充电头买20w还是30w)

    苹果手机充电头发烫正常吗(苹果手机充电头买20w还是30w)

  • 微信头像模糊怎么解决(微信头像模糊怎么回事怎么办)

    微信头像模糊怎么解决(微信头像模糊怎么回事怎么办)

  • 为什么不能极速退款了(为什么不能极速退款淘宝)

    为什么不能极速退款了(为什么不能极速退款淘宝)

  • 面向对象的编程语言有哪些特点(面向对象的编程语言)

    面向对象的编程语言有哪些特点(面向对象的编程语言)

  • 滴滴还能看乘客信息吗(滴滴司机是否可以看见乘客之前的打车记录)

    滴滴还能看乘客信息吗(滴滴司机是否可以看见乘客之前的打车记录)

  • mpgt2ch/a是ipad几(mpgw2ch/a是ipad几)

    mpgt2ch/a是ipad几(mpgw2ch/a是ipad几)

  • 华为服务框架有什么用(华为服务框架有什么作用)

    华为服务框架有什么用(华为服务框架有什么作用)

  • 小米手机怎么更改手机地区(小米手机怎么更改操作模式)

    小米手机怎么更改手机地区(小米手机怎么更改操作模式)

  • 淘宝怎么小窗口看直播(淘宝如何开小窗口)

    淘宝怎么小窗口看直播(淘宝如何开小窗口)

  • 笔记本主板电池没电会影响开机吗(笔记本主板电池没电了会开不了机吗)

    笔记本主板电池没电会影响开机吗(笔记本主板电池没电了会开不了机吗)

  • ps曲线调色原理(ps曲线调色原理图片)

    ps曲线调色原理(ps曲线调色原理图片)

  • oppor17和reno区别(oppor17好还是reno好)

    oppor17和reno区别(oppor17好还是reno好)

  • oppo手机怎么显示未读消息数量(oppo手机怎么显示流量使用情况)

    oppo手机怎么显示未读消息数量(oppo手机怎么显示流量使用情况)

  • 全民k歌怎么解除微信(全民K歌怎么解绑手机号)

    全民k歌怎么解除微信(全民K歌怎么解绑手机号)

  • ipad不能兼容wps怎么办(ipad不能兼容百度网盘)

    ipad不能兼容wps怎么办(ipad不能兼容百度网盘)

  • 【CSS】面试官问我视差滚动怎么实现?我懵了...(css经典面试题)

    【CSS】面试官问我视差滚动怎么实现?我懵了...(css经典面试题)

  • 留抵税额退税怎么做账
  • 房地产零税率
  • 燃气费的账务处理
  • 有进项发票还用交税
  • 转让房产收取的增值税
  • 新车交车辆购置税需要什么材料
  • 税法关于开具发票的规定
  • 增值税进项税转出所得税调整吗
  • 季度收取租金会计分录怎么写?
  • 建筑工程总包单位招聘
  • 用现金缴纳海关增值税能否抵扣?
  • 金税盘是固定资产还是无形资产
  • 滞留发票产生的原因主要包括哪些?
  • 小微企业免征增值税条件
  • 长期挂账的其他应收款如何处理
  • 购销合同印花税2023年新规定
  • 零申报的企业年末的利润表可以为零吗?
  • 工商局打印公司章程介绍信
  • 宿舍开店能开些啥
  • 收到退回的土地使用税分录怎么做
  • 损益类科目在期末均需转入什么科目
  • 购买的房屋如何过户
  • 申请出具商标注意事项
  • office2016安全模式
  • 分摊本月领用材料的成本差异
  • 新会计准则职工薪酬解读
  • 局域网故障可能的原因
  • php数组函数输出《咏雪》里有多少"片"字
  • 家庭承包发包方的权利和义务
  • 职工医保报销会扣医保卡的钱吗
  • java date类型
  • 公司需要购买物品
  • php请求接口数据
  • 一般纳税人的进项普票怎么做账
  • php递归实现1到100的和
  • 云计算技术是学什么的
  • 原生js实现promise
  • 确认的政府补助利得可以确认为收入吗
  • d2loader does not recognize
  • 增值税发票复印件可以入账吗与原件一致
  • 完美破费是什么意思
  • 商业折扣的会计分录
  • 对公账号里面的钱会扣税吗
  • 发票有种类型
  • 记账凭证基本内容口诀
  • 企业特殊工种不备案可以补报备吗
  • 残保金是计入管理费用还是?
  • 劳保用品费用计入什么科目
  • 制造费用属于哪个科目类别
  • 一般纳税人支出都要交税吗
  • 事业单位库存物品
  • 增值税留抵税额借贷方向
  • 全额计提的坏账怎么做账
  • 未分配利润的
  • 企业以原有公司为主体
  • 人工成本包括哪些项目
  • windows7更新80072efe
  • win7的运行命令在哪里
  • 如何配置samba配置文件
  • 重庆四日游最佳攻略超详细
  • win10新版cortana
  • route.exe - route是什么进程 有什么用
  • linux集群的作用和意义
  • centos dvd安装
  • 网卡被禁用一启动就死机
  • linux网络设备有哪些
  • 深入理解ffmpeg pdf
  • js设置图片宽度
  • 显示网络配置的命令
  • css下margin、padding、border、background和font缩写示例
  • shell编程入门
  • shell脚本输出空格
  • java script语言
  • jquery 画图
  • android源码下载地址
  • javascript面向对象编程指南第三版
  • 南宁市税局官网
  • 法人没有实名认证,现在要变更,还需要实名认证吗
  • 如何打印个税缴纳记录
  • 乡镇经管站是如何工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设