Heim > Backend-Entwicklung > PHP-Problem > So verbergen Sie übergebene Parameter in PHP

So verbergen Sie übergebene Parameter in PHP

藏色散人
Freigeben: 2023-03-17 08:22:01
Original
1840 Leute haben es durchsucht

So verbergen Sie Parameter in PHP: 1. Erstellen Sie eine PHP-Beispieldatei. 2. Holen Sie sich den URI über „$_SERVER[“REQUEST_URI“];“; } ” und andere Methoden können verwendet werden, um die pseudostatische Übergabe versteckter Parameter zu implementieren.

So verbergen Sie übergebene Parameter in PHP

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, Dell G3-Computer.

php Wie verstecke ich Parameter?

PHP Pseudostatisches Verbergen von Parameternamen in PHP Pseudostatisches Verstecken der vier Methoden zum Übergeben von Parameternamen

Möchten Sie den relevanten Inhalt der vier Methoden zum pseudostatischen Verbergen von PHP-Parameternamen erfahren? Das pseudostatische Verstecken von PHP im Detail. Verwandte Kenntnisse über die Parameterübergabe und einige Codebeispiele können gerne gelesen und korrigiert werden. Konzentrieren wir uns auf PHP, pseudostatische und versteckte Parameterübergabe.

Pseudostatische Methode eins:

Der Code lautet wie folgt:

<?php
//伪静态方法一
// localhost/php100/test.php?id|1@action|2
$Php2Html_FileUrl = $_SERVER["REQUEST_URI"];
echo $Php2Html_FileUrl."<br>";
// /php100/test.php?id|1@action|2
$Php2Html_UrlString = str_replace("?","",str_replace("/", "", strrchr(strrchr($Php2Html_FileUrl, "/"),"?")));
echo $Php2Html_UrlString."<br>";
// id|1@action|2
$Php2Html_UrlQueryStrList = explode("@", $Php2Html_UrlString);
print_r($Php2Html_UrlQueryStrList);
// Array ( [0] => id|1 [1] => action|2 ) echo "<br>";
foreach($Php2Html_UrlQueryStrList as $Php2Html_UrlQueryStr) {
$Php2Html_TmpArray = explode("|", $Php2Html_UrlQueryStr);
print_r($Php2Html_TmpArray);
// Array ( [0] => id [1] => 1 ) ; Array ( [0] => action [1] => 2 )
echo "<br>";
$_GET[$Php2Html_TmpArray[0]] = $Php2Html_TmpArray[1];
}
//echo &#39;假静态:$_GET变量<br />&#39;;
print_r($_GET);
// Array ( [id|1@action|2] => [id] => 1 [action] => 2 ) echo "<br>";
echo "<hr>";
echo $_GET[id]."<br>";
// 1 echo $_GET[action];
// 2
?>
Nach dem Login kopieren

Der Code lautet wie folgt:

Pseudostatische Methode zwei:

<?php
//伪静态方法二
// localhost/php100/test.php/1/2
$filename = basename($_SERVER[&#39;SCRIPT_NAME&#39;]);
echo $_SERVER[&#39;SCRIPT_NAME&#39;]."<br>";// /php100/test.php
echo $filename."<br>";// test.php
if(strtolower($filename)==&#39;test.php&#39;){
if(!empty($_GET[id])){
$id=intval($_GET[id]);
echo $id."<br>";
$action=intval($_GET[action]);
echo $action."<br>";
}else{
$nav=$_SERVER[&#39;REQUEST_URI&#39;];
echo "1:".$nav."<br>";// /php100/test.php/1/2
$script=$_SERVER[&#39;SCRIPT_NAME&#39;];
echo "2:".$script."<br>";// /php100/test.php
$nav=ereg_replace("^$script","",urldecode($nav));
echo $nav."<br>"; // /1/2
$vars=explode("/",$nav);
print_r($vars);// Array ( [0] => [1] => 1 [2] => 2 )
echo "<br>";
$id=intval($vars[1]);
$action=intval($vars[2]);
}
echo $id.&#39;&&#39;.$action;
}
?>
Nach dem Login kopieren

Pseudostatische Methode drei:

Der Code lautet wie folgt:

<?php
//伪静态方法三
function mod_rewrite(){
global $_GET;
$nav=$_SERVER["REQUEST_URI"];
echo $nav."<br>";
$script_name=$_SERVER["SCRIPT_NAME"];
echo $script_name."<br>";
$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);
echo $nav."<br>";
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾部的.html或.htm
echo $nav."<br>";
$vars = explode("/",$nav);
print_r($vars);
echo "<br>";
for($i=0;$i<Count($vars);$i+=2){
$_GET["$vars[$i]"]=$vars[$i+1];
}
return $_GET;
}
mod_rewrite();
$year=$_GET["year"];//结果为&#39;2006&#39;
echo $year."<br>";
$action=$_GET["action"];//结果为&#39;_add&#39;
echo $action;
?>
Nach dem Login kopieren

Pseudostatische Methode vier:

Der Code lautet wie folgt:

<?php
//伪静态方法四
//利用server变量 取得PATH_INFO信息 该例中为 /1,100,8630.html 也就是执行脚本名后面的部分
if(@$path_info =$_SERVER["PATH_INFO"]){
//正则匹配一下参数
if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){
$gid=intval($arr_path[1]); //取得值 1
$sid=intval($arr_path[2]); //取得值100
$softid=intval($arr_path[3]); //取得值8630
}else die("Path:Error!");
//相当于soft.php?gid=1&sid=100&softid=8630
}else die(&#39;Path:Nothing!&#39;);
?>
Nach dem Login kopieren

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo verbergen Sie übergebene Parameter in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage