zoukankan      html  css  js  c++  java
  • PHP伪静态隐藏传递参数名的几种方法

    伪静态方法一: 

    <?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 ’假静态:$_GET变量<br />’;  

    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  

    ?>  
      
    伪静态方法二: 

    <?php  
    //伪静态方法二  

    // localhost/php100/test.php/1/2  

    $filename = basename($_SERVER[’SCRIPT_NAME’]);  

    echo $_SERVER[’SCRIPT_NAME’]."<br>";// /php100/test.php  

    echo $filename."<br>";// test.php  


    if(strtolower($filename)==’test.php’){  

    if(!empty($_GET[id])){  

    $id=intval($_GET[id]);  

    echo $id."<br>";  

    $action=intval($_GET[action]);  

    echo $action."<br>";  

    }else{  

    $nav=$_SERVER[’REQUEST_URI’];  

    echo "1:".$nav."<br>";// /php100/test.php/1/2  

    $script=$_SERVER[’SCRIPT_NAME’];  

    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.’&’.$action;  
    }  
    ?>  

  • 相关阅读:
    U盘为什么还有剩余空间,但却提示说空间不够
    U盘安装系统
    win8 64位+Oracle 11g 64位下使用PL/SQL Developer 的解决办法
    Oracle 去掉重复字符串
    ORACLE获取字符串中数字部分
    MyBatis中的大于、小于、like等符号写法
    Oracle计算时间差函数
    HDU 3569 Imaginary Date 简单期望
    C语言之——文件操作模式
    LeetCode OJ 之 Ugly Number II (丑数-二)
  • 原文地址:https://www.cnblogs.com/buffer/p/1984357.html
Copyright © 2011-2022 走看看