fly512
(我本如是)
版主
  
人生的另一半
UID 42566
精华
0
积分 2498
帖子 2319
金钱 1768 喜悦币
威望 0
人脉 730
阅读权限 100
注册 2004-10-31 来自 亚特兰迪斯
状态 离线
|
[推荐阅读] 贴两个自定义的smarty的插件
一个简单的例子
<? class encryptCalss{ var $key=12; function encode($txt){ for($i=0;$i<strlen($txt);$i++){ $txt[$i]=chr(ord($txt[$i])+$this->key); } return $txt=urlencode(base64_encode(urlencode($txt))); } function decode($txt){ $txt=urldecode(base64_decode($txt)); for($i=0;$i<strlen($txt);$i++){ $txt[$i]=chr(ord($txt[$i])-$this->key); } return $txt; } }
$kk=Array ( //插入值,可以自己修改,只有你知道 0=>'a', 1=>'b', 2=>'c', 3=>'d', 4=>'e', 5=>'f', 6=>'g', 7=>'h', 8=>'i', 9=>'j', 10=>'k', 11=>'l', 12=>'m', 13=>'n' );
$s=new encryptCalss(); $string=Array ( //待加密字符 0=>'w', 1=>'w', 2=>'w', 3=>'.', 4=>'h', 5=>'u', 6=>'s', 7=>'t', 8=>'.', 9=>'e', 10=>'d', 11=>'u', 12=>'.', 13=>'c', 14=>'n' , ); $m=2; //每隔$m个字符插入一个字符,自己设定,只有自己知道 for($i=0,$p=0;$i<count($string);$i++,$p++){ $string_s.=$string[$i]; if($i%$m==0) $string_s.=$kk[$p]; } echo "插入字符后的字符串:".$string_s."<br>"; $p=$s->encode($string_s); echo "加密后的字符串:".$p."<br>"; echo "解密后的字符串:".$t=$s->decode(str_replace("%3D","",$p)); echo "<br>"; $string_t.=$t[0]; $i=1; for($i=1;$i<strlen($t);$i+=1+$m){ $string_t.=substr($t,$i+1,$m); // echo $t[$i]; } echo "原字符串:".$string_t; ?>
|
|