PHP token验证生成原理实例分析


Posted in PHP onJune 05, 2019

本文实例讲述了PHP token验证生成原理。分享给大家供大家参考,具体如下:

<?php
/**
 * @Author: Ding Jianlong
 * @Date:  2019-03-20 00:38:01
 * @Last Modified by:  Ding Jianlong
 * @Last Modified time: 2019-03-22 17:50:59
 */
//生成发送请求的验证 token
//这里的key可以是包含用户信息的内容,不用用户+不同的权限
function makeToken($key){
 //100秒内有效,不变,时间根据实际需要调整。第三方登录授权15天。
 return $token = md5($key.sha1(substr(time(),3,7)));
}
//后台同理验证,
function checkToken($key,$token){
 $true = md5($key.sha1(substr(time(),3,7)));
 if($token == $true){
 return true;  //token正确
 }else{
 return false;
 }
}
$key = 'https://github.com/idjl/';
echo $t = makeToken($key);
var_dump(checkToken($key,'259521122'));
var_dump(checkToken($key,$t));
var_dump(checkToken($key,'259521122'));

运行结果:

e4ce1a6c66246eee048f11a540bf197ebool(false)
bool(true)
bool(false)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php中常用字符串处理代码片段整理
Nov 07 PHP
解析PHP对现有搜索引擎的调用
Jun 25 PHP
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
May 07 PHP
php采用curl模仿登录人人网发布动态的方法
Nov 07 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
一个完整的PHP类包含的七种语法说明
Jun 04 PHP
php生成动态验证码gif图片
Oct 19 PHP
PHP采用超长(超大)数字运算防止数字以科学计数法显示的方法
Apr 01 PHP
PHP实现APP微信支付的实例讲解
Feb 10 PHP
PHP htmlspecialchars()函数用法与实例讲解
Mar 08 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
Apr 02 PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
May 12 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
Jun 05 #PHP
PHP 数组黑名单/白名单实例代码详解
Jun 04 #PHP
TP5(thinkPHP5框架)实现显示错误信息及行号功能的方法
Jun 03 #PHP
PHP使用CURL实现下载文件功能示例
Jun 03 #PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
Jun 03 #PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
Jun 03 #PHP
PHP从零开始打造自己的MVC框架之入口文件实现方法详解
Jun 03 #PHP
You might like
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
PHP将URL转换成短网址的算法分享
2016/09/13 PHP
php封装一个异常的处理类
2017/06/08 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
javascript textContent与innerText的异同分析
2010/10/22 Javascript
js函数排序的实例代码
2013/07/01 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
js选择并转移导航菜单示例代码
2014/08/19 Javascript
Nodejs全栈框架StrongLoop推荐
2014/11/09 NodeJs
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
jquery特效 点击展示与隐藏全文
2015/12/09 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
jQuery实现鼠标滚动图片延迟加载效果附源码下载
2016/06/28 Javascript
微信小程序 高德地图SDK详解及简单实例(源码下载)
2017/01/11 Javascript
ajax 提交数据到后台jsp页面及页面跳转问题
2017/01/19 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
python用win32gui遍历窗口并设置窗口位置的方法
2019/07/26 Python
Python3中FuzzyWuzzy库实例用法
2020/11/18 Python
CSS3实现可关闭的下拉手风琴菜单效果
2015/08/31 HTML / CSS
CSS3实现3D翻书效果
2016/06/20 HTML / CSS
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
2018/07/12 HTML / CSS
存储过程和函数的区别
2013/05/28 面试题
网络安全类面试题
2015/08/01 面试题
在c#中using和new这两个关键字有什么意义
2013/05/19 面试题
高级护理专业大学生求职信
2013/10/24 职场文书
生产现场工艺工程师岗位职责
2013/11/28 职场文书
平面网站制作专科生的自我评价分享
2013/12/11 职场文书
企业办公室主任岗位职责
2014/02/19 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
服装设计专业求职信
2014/06/16 职场文书
党员带头倡议书
2015/04/29 职场文书
2016年社区综治宣传月活动总结
2016/03/16 职场文书
Pandas||过滤缺失数据||pd.dropna()函数的用法说明
2021/05/14 Python
Android Studio实现简易进制转换计算器
2022/05/20 Java/Android