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

  • 哪些东西要征收消费税
  • 什么情况下纳税人和负税人一致
  • 公司申报个税流程
  • 发生无偿赠与行为怎么办
  • 小规模未达起征点
  • 个税申报逾期罚款怎么交
  • 其他应付款为负数
  • 兼职工资直接入公司账户
  • 开发产品计入什么科目
  • 收取职工个人部分养老金怎么做分录
  • 哪些银行承兑汇票不能收的名单
  • 餐饮业购买餐桌椅会计分录
  • 如何算清楚公司的账
  • 旅行社开的旅游费发票可以税前扣除
  • 公司年末补缴企业所得税需要提供什么资料?
  • 减免所得税怎么算税率
  • 发票验旧后可领新发票吗
  • 对公账户网银证书有效期多久
  • 广告费扣税
  • 应付职工薪酬明细表怎么填写
  • 网上申报附加税怎么报
  • 企业捐赠如何入账
  • 小规模计提缴纳增值税
  • win10怎么启动双系统
  • win10 microsoft store怎么改变下载途径
  • 四种存款账户的定义
  • 其他货币资金包括哪些项目
  • 实收资本账户的核算内容是什么
  • win8操作系统
  • 国有企业上缴利润的账务处理怎么处理?
  • hppusg.exe是什么进程
  • 股东向公司借款协议书范本
  • 学堂在线结课后还能看吗
  • Selenium.Webdriver最新语法教程(附Chrome实例演示)
  • 深入理解linux内核
  • php运算符@符号
  • js基本数据类型和复杂数据类型的区别
  • 电脑耗材发票税点多少
  • linux中mongodb启动
  • 帝国cms获取当日发布的url链接
  • 现金科目的指定科目是什么
  • 银行存款 会计科目
  • 一个简单的脚本
  • 对企业发票的监管
  • 其他应收款科目余额在贷方表示什么
  • 销售折扣可以开红字专票吗
  • 行政单位资产报告范文
  • 坏帐损失的税务处理
  • 残保金缴纳计算方法2021
  • 异价调拨什么意思
  • 主营业务收入增加计入借方还是贷方
  • 无形资产与固定资产一样都会存在实体性贬值
  • 河道管理费和水利基金
  • 销售折扣含义
  • 应付账款平账调到哪个科目
  • 会计科目的设置原则包括( )
  • 公允价值举例说明
  • sql存储过程什么意思
  • sqlserver交叉表
  • 怎么禁止p2p下载器
  • macos10.8下载
  • spoolsrv32.exe - spoolsrv32进程是什么文件 有何作用
  • macbook怎么剪视频软件
  • pygame有哪些函数
  • perl编程
  • cocos2dx 2.2.2
  • vue动态引入模块
  • node.js 作用
  • js怎么操作css
  • easyui控件
  • javascript异步编程
  • python基本用法
  • python爬虫代码怎么写
  • unity ulua
  • 网页全屏是哪个键
  • logcatapp
  • android 开源
  • 税务注销核对发票怎么办
  • 税控盘在哪领取
  • 电子税务局申报流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设