本文实例讲述了PHPtoken验证生成原理。分享给大家供大家参考,具体如下:<?php/***@Autho
本文实例讲述了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'));
运行结果:
PHP token验证e4ce1a6c66246eee048f11a540bf197ebool(false) bool(true) bool(false)