
我们在开发过程中,有的时候GET传值,字符串太伏册长,我们可以用这个方和厅旦法,在传值之前先调用函数lock_url(加密字符串),加密以后在传递唤扰,GET接受以后用函数unlock_url(待解密字符串)进行解密。
如果大家有更好更简单的方法,发评论区我们一起讨论学习!
function lock_url($txt)
{
$key = ']!L]<_w{O}zEIs!.f(T[|ZGQaxS":?#`v%EburotLZi"KdKs@QivlJ[PjWw`.wcT'//key
$chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-=+"
$nh = rand(0,64)
$ch = $chars[$nh]
$mdKey = md5($key.$ch)
$mdKey = substr($mdKey,$nh%8, $nh%8+7)
$txt = base64_encode($txt)
$tmp = ''
$i=0$j=0$k = 0
for ($i=0$i<strlen($txt)p="" {
$k = $k == strlen($mdKey) ? 0 : $k
$j = ($nh+strpos($chars,$txt[$i])+ord($mdKey[$k++]))%64
$tmp .= $chars[$j]
}
return urlencode($ch.$tmp)
}
//解密函数
function unlock_url($txt)
{
$key = ']!L]<_w{O}zEIs!.f(T[|ZGQaxS":?#`v%EburotLZi"KdKs@QivlJ[PjWw`.wcT'//key
$txt = urldecode($txt)
$chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-=+"
$ch = $txt[0]
$nh = strpos($chars,$ch)
$mdKey = md5($key.$ch)
$mdKey = substr($mdKey,$nh%8, $nh%8+7)
$txt = substr($txt,1)
$tmp = ''
$i=0$j=0$k = 0
for ($i=0$i<strlen($txt)p="" {
$k = $k == strlen($mdKey) ? 0 : $k
$j = strpos($chars,$txt[$i])-$nh - ord($mdKey[$k++])
while ($j<0) $j+=64
$tmp .= $chars[$j]
}
return base64_decode($tmp)
}
MD的全称为:MachineDescription文件,是一个开发文件,用于程序。
MachineDescription文件:包括一个目标机器支持的每个指令的指令模式的开发文件,被GNU编译程序集(GCC)引用,通常用于Unix系统中的编译程序。
MD文件扩展名如下:
(1)MDCD压缩文件 :文件或 文件组使用MDCD压缩器压缩;
(2)Amiga LZX压缩文链禅件 :保存为Moneydance的数据文件,一个个人资金软件程序,比Intuit Quicken 或 Microsoft Money更小,保存银行账户,报表,预算,股票档案和其他信息;
(3)“markdown”的缩写:Markdown是一圆手种可以使用普橘唤嫌通文本编辑器编写的轻量化标记语言,通过类似HTML的标记语法,它可以使普通文本内容具有一定的格式。
注意:该文档格式在github上有广泛应用,用于代替传统的txt文本,同时又比html简单,这样有注于专注文章内容。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)