• 技术文章 >后端开发 >php教程

    php实现URL加密解密

    墨辰丷墨辰丷2018-05-30 17:17:37原创1372

    这篇文章主要介绍了php实现URL加密解密的方法,结合实例形式分析了php针对URL字符串进行加密解密操作的相关技巧,需要的朋友可以参考下

    具体如下:

    <html xmlns="#" 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, p, 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排序算法系列之归并排序详解

    thinkPHP5框架数据库连贯操作:cache()用法详情

    PHP接口多继承和tarits实现多继承效果的方法教程详情

    以上就是php实现URL加密解密的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:加密解密 php 实现
    上一篇:PHP读取zip文件的方法 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解PHP实现职责链设计模式(附代码示例)• php实现通过JSON RPC与go通讯(附代码)• 浅析怎么使用PHP做异步爬取数据• PHP8.3要有新函数了!(json_validate函数说明)• 设计API接口时,要注意这些地方!
    1/1

    PHP中文网