php实现URL加密解密的方法


Posted in PHP onNovember 17, 2016

本文实例讲述了php实现URL加密解密的方法。分享给大家供大家参考,具体如下:

<html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<meta http-equiv="content-language" content="zh-CN" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="MSThemeCompatible" content="Yes" />
<meta http-equiv="imagetoolbar" content="no" />
<meta http-equiv="widow-target" content="_top" />
<meta name="robots" content="index, follow" />
<meta name="author" content="3945, [email]ljm77@km169.net[/email]" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta name="copyright" content="Copyright 3945 All Rights Reserved" />
<title>无标题文档</title>
<style type="text/css">
<!--
a, a:link{text-decoration: none; color:#000000; font-size:9pt;}   a:visited{text-decoration: none; color:#000000;}   a:hover{text-decoration: underline; color:red;}
body, td, p, li, div, select{font-size:9pt; font-family:"宋体";}
-->
</style>
</head>
<body>
<?php
function query_encode($sQuery)
{//加密链接
  if(strlen($sQuery)==0)
   {
     return '';
   }
   else
   {
    $s_tem = preg_replace("/&/i", '&', $sQuery);
    $s_tem = preg_replace("/&/i", '&', $s_tem);
    $a_tem = explode('&', $s_tem);
    shuffle($a_tem);
    $s_tem = implode('&', $a_tem);
    $s_tem = rawurlencode($s_tem);
    $s_tem = base64_encode($s_tem);
    $s_tem = strrev($s_tem);
     return $s_tem;
   }
}
function query_decode($sEncode)
{//解密链接
  if(strlen($sEncode)==0)
   {
     return '';
   }
   else
   {
    $s_tem = strrev($sEncode);
    $s_tem = base64_decode($s_tem);
    $s_tem = rawurldecode($s_tem);
     return $s_tem;
   }
}
function rebuild_GET()
{//重写$_GET全局变量
  $_GET = array();
  $s_query = $_SERVER['QUERY_STRING'];
   if(strlen($s_query)==0)
   {
     return;
   }
   else
   {
    $s_tem = query_decode($s_query);
    $a_tem = explode('&', $s_tem);
     foreach($a_tem as $val)
     {
      $tem = explode('=', $val);
      $_GET[$tem[0]] = $tem[1];
     }
   }
}
rebuild_GET();
echo 'GET:<pre>'.print_r($_GET, true).'</pre>';
function testGET()
{
   echo 'Function GET:<pre>'.print_r($_GET, true).'</pre>';
}
testGET();
?>
<br /><br /><br />
<?
for($i=1; $i<10; $i++)
{
  $s_url = query_encode('ac=index:logo& style="color: #007700">.$i);
   echo sprintf('<a href="?%s">TEST: %s</a><br />', $s_url, $s_url);
}
?>
</body>
</html>

PHP 相关文章推荐
PHP程序员编程注意事项
Apr 10 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
php中的boolean(布尔)类型详解
Oct 28 PHP
那些年我们错过的魔术方法(Magic Methods)
Jan 14 PHP
php操作xml入门之cdata区段
Jan 23 PHP
PHP Streams(流)详细介绍及使用
May 12 PHP
PHP编写的图片验证码类文件分享
Jun 06 PHP
PHP7匿名类用法分析
Sep 26 PHP
php双层循环(九九乘法表)
Oct 23 PHP
原生JS实现Ajax通过POST方式与PHP进行交互的方法示例
May 12 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
Feb 21 PHP
Cookie跨域问题解决方案代码示例
Nov 24 PHP
PHP读取zip文件的方法示例
Nov 17 #PHP
php安装php_rar扩展实现rar文件读取和解压的方法
Nov 17 #PHP
php arsort 数组降序排序详细介绍
Nov 17 #PHP
php array_values 返回数组的值实例详解
Nov 17 #PHP
PHP获取input输入框中的值去数据库比较显示出来
Nov 16 #PHP
PHP foreach遍历多维数组实现方式
Nov 16 #PHP
php数据库操作model类(使用__call方法)
Nov 16 #PHP
You might like
Linux下ZendOptimizer的安装与配置方法
2007/04/12 PHP
详解PHP显示MySQL数据的三种方法
2008/06/05 PHP
PHP的substr_replace将指定两位置之间的字符替换为*号
2011/05/04 PHP
PHP中的reflection反射机制测试例子
2014/08/05 PHP
php字符串截取函数用法分析
2014/11/25 PHP
Javascript 模式实例 观察者模式
2009/10/24 Javascript
JS实现self的resend
2010/07/22 Javascript
Extjs 3.3切换tab隐藏相应工具栏出现空白解决
2013/04/02 Javascript
js使用eval解析json(js中使用json)
2014/01/17 Javascript
Javascript遍历table中的元素示例代码
2014/07/08 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
2016/12/29 Javascript
js处理包含中文的字符串实例
2017/10/11 Javascript
实例讲解Python的函数闭包使用中应注意的问题
2016/06/20 Python
Python自动化测试Eclipse+Pydev 搭建开发环境
2016/08/15 Python
python中快速进行多个字符替换的方法小结
2016/12/15 Python
使用python3调用wxpy模块监控linux日志并定时发送消息给群组或好友
2019/06/05 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
python 两个数据库postgresql对比
2019/10/21 Python
python实现数据清洗(缺失值与异常值处理)
2019/12/02 Python
Chain Reaction Cycles芬兰:世界上最大的在线自行车商店
2017/12/06 全球购物
什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
2012/09/06 面试题
信息技术专业个人自我评价
2013/12/11 职场文书
商场活动策划方案
2014/01/24 职场文书
信息技术培训感言
2014/03/06 职场文书
村干部培训方案
2014/05/02 职场文书
幼儿教师师德演讲稿
2014/05/06 职场文书
2014教师教育实践活动对照检查材料思想汇报
2014/09/21 职场文书
介绍信模板
2015/01/31 职场文书
综合测评个人总结
2015/03/03 职场文书
2016公司年会通知范文
2015/04/25 职场文书
教师节主题班会教案
2015/08/17 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
详解 TypeScript 枚举类型
2021/11/02 Javascript