首页> 实战笔录 >PHP开发笔记 >PHP PHP
php自定义加密和解密,url参数加密,实现分享返利
作者:小萝卜 2019-03-26 【 PHP 自定义函数 加密 】 浏览 3540
简介php自定义函数实现自定义加密和解密,在商城中你购买了某个商品,然后商家会提示让你去分享,分享的同时返给你积分或直接返现给你,那我们要怎么去实现这个功能呢?
在我们开发过程中有时会遇到分享返利,分享返现的功能比如,在商城中你购买了某个商品,然后商家会提示让你去分享,分享的同时返给你积分或直接返现给你,那我们要怎么去实现这个功能呢?
博主的思路是这样的,在分享的链接里面放一个自定义加密的参数,将分享者的uid和当前商品的id放在一起加密,这样当其它人点这个分享的链接进入时,再根据这个参数解密获取分享人的uid和商品的id,从而实现分享返现的功能。
加密代码如下:
function php_encrypt($str){
$encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890.@';/*仔细看是有发现的(加密密钥)*/
$decrypt_key = 'mgzqtcobmuhelkpdawxfyivrsj2468071359$%';/*这个可以自己乱写(加密密钥字符串)*/
if ( strlen($str) == 0) return false;//使用Strlen()函数获取要加密字符串的长度,如果是“0”,停止加密;
for($i = 0;$i < strlen($str);$i++){
for($j = 0;$j < strlen($encrypt_key);$j++){//依次将$str的字符同加密密钥进行比较,
if($str[$i]==$encrypt_key[$j]){//如果两者的字符相同
$enter.= $decrypt_key[$j];//记录相同位置的字符给$enter
break;
}
}
}
return $enter;//循环完后形成一个新的字符串$enter;
}
解密代码:
function php_decrypt($str){
$encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890,'; //注意和加密参数保持一致
$decrypt_key = 'mgzqtcobmuhelkpdawxfyivrsj2468071359A';//注意和加密参数保持一致
If (strlen($str)==0) return false;
for($i = 0;$i < strlen($str);$i++){
for($j = 0;$j < strlen($decrypt_key);$j++){
if($str[$i]==$decrypt_key[$j]){
$enter .= $encrypt_key[$j];
break;
}
}
}
return $enter;
}
构造加密参数的链接:
$param = php_encrypt($uid.','.$qid); //uid会员id qid产品id
$url = http://www.luowebs.com?param=$param;
根据分享链接解密产生获取分享人的uid和产品id:
$param = php_decrypt($_GET['param']);
$res = explod(',',$param);
echo $res[0]; //会员的uid
echo "-";
echo $res[1]; //商品的id
很赞哦! (0)
上一篇:php自定义函数获取项目目录