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 MsSql server时遇到的中文编码问题
Jun 11 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
Jun 23 PHP
php采用file_get_contents代替使用curl实例
Nov 07 PHP
PHP中使用循环实现的金字塔图形
Nov 08 PHP
PHP统计当前在线用户数实例讲解
Oct 21 PHP
php处理单文件、多文件上传代码分享
Aug 24 PHP
php源码之将图片转化为data/base64数据流实例详解
Nov 27 PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
Jan 17 PHP
TP5框架使用QueryList采集框架爬小说操作示例
Mar 26 PHP
通过代码实例解析PHP session工作原理
Dec 11 PHP
详解PHP服务器如何在有限的资源里最大提升并发能力
May 25 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+javascript实现二级级联菜单的制作
2008/05/06 PHP
php下过滤html代码的函数 提高程序安全性
2010/03/02 PHP
php UTF-8、Unicode和BOM问题
2010/05/18 PHP
PHP 查找字符串常用函数介绍
2012/06/07 PHP
Laravel 5框架学习之表单
2015/04/08 PHP
PHP FileSystem 文件系统常用api整理总结
2019/07/12 PHP
JQuery 网站换肤功能实现代码
2009/11/02 Javascript
javascript实现动态侧边栏代码
2014/02/19 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
node.js文件上传处理示例
2016/10/27 Javascript
禁用backspace网页回退功能的实现代码
2016/11/15 Javascript
angularjs使用directive实现分页组件的示例
2017/02/07 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
angularjs实现首页轮播图效果
2017/04/14 Javascript
对angularJs中controller控制器scope父子集作用域的实例讲解
2018/10/08 Javascript
vue中使用cookies和crypto-js实现记住密码和加密的方法
2018/10/18 Javascript
微信小程序仿今日头条导航栏滚动解析
2019/08/20 Javascript
layer 刷新某个页面的实现方法
2019/09/05 Javascript
Vue+Element实现网页版个人简历系统(推荐)
2019/12/31 Javascript
[42:20]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
Python实现改变与矩形橡胶的线条的颜色代码示例
2018/01/05 Python
python基于SMTP协议发送邮件
2019/05/31 Python
简单了解python的内存管理机制
2019/07/08 Python
Python算法中的时间复杂度问题
2019/11/19 Python
python GUI库图形界面开发之PyQt5 UI主线程与耗时线程分离详细方法实例
2020/02/26 Python
环境科学毕业生自荐信
2013/11/21 职场文书
说明书格式及范文
2014/05/07 职场文书
节能环保口号
2014/06/12 职场文书
水污染治理工程专业自荐信
2014/06/21 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
介绍信范文大全
2015/05/07 职场文书
篮球比赛通讯稿
2015/07/18 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
Python类方法总结讲解
2021/07/26 Python