Maison  >  Article  >  développement back-end  >  PHP implémente le cryptage et le décryptage des URL

PHP implémente le cryptage et le décryptage des URL

墨辰丷
墨辰丷original
2018-05-30 17:17:372617parcourir

Cet article présente principalement la méthode d'implémentation du cryptage et du déchiffrement d'URL en PHP. Il analyse les techniques associées de PHP pour le cryptage et le déchiffrement des chaînes d'URL sous forme d'exemples. Les amis dans le besoin peuvent se référer à

. comme suit :

<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 &#39;&#39;;
   }
   else
   {
    $s_tem = preg_replace("/&/i", &#39;&&#39;, $sQuery);
    $s_tem = preg_replace("/&/i", &#39;&&#39;, $s_tem);
    $a_tem = explode(&#39;&&#39;, $s_tem);
    shuffle($a_tem);
    $s_tem = implode(&#39;&&#39;, $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 &#39;&#39;;
   }
   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[&#39;QUERY_STRING&#39;];
   if(strlen($s_query)==0)
   {
     return;
   }
   else
   {
    $s_tem = query_decode($s_query);
    $a_tem = explode(&#39;&&#39;, $s_tem);
     foreach($a_tem as $val)
     {
      $tem = explode(&#39;=&#39;, $val);
      $_GET[$tem[0]] = $tem[1];
     }
   }
}
rebuild_GET();
echo &#39;GET:<pre class="brush:php;toolbar:false">&#39;.print_r($_GET, true).&#39;
'; function testGET() { echo 'Function GET:
&#39;.print_r($_GET, true).&#39;
'; } testGET(); ?>


.$i); echo sprintf('TEST: %s
', $s_url, $s_url); } ?>

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.


Recommandations associées :

Explication détaillée du tri par fusion des séries d'algorithmes de tri PHP

Fonctionnement cohérent de la base de données du framework thinkPHP5 : détails de l'utilisation de cache()

Détails du didacticiel sur l'héritage multiple et les tarits de l'interface PHP pour obtenir un effet d'héritage multiple

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn