首页> 实战笔录 >PHP开发笔记 >PHP PHP

php自定义加密和解密,url参数加密,实现分享返利

作者:小萝卜 2019-03-26 浏览 2842

简介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)

文章评论

    高端网站建设