程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php 簡單的路由解析 可以隨意設置後綴(html,do,shtml,aspx等等)

php 簡單的路由解析 可以隨意設置後綴(html,do,shtml,aspx等等)

編輯:關於PHP編程

[php]
if(isset($_SERVER['PATH_INFO'])){ 
      $str=substr($_SERVER['PATH_INFO'],0,strpos($_SERVER['PATH_INFO'],'.')); 
      //獲取路徑信息(pathinfo)  
      $pathinfo=explode('/',trim($str,'/')); 
      //獲取$_GET['m']  
      $_GET['m']=(!emptyempty($pathinfo[0])?$pathinfo[0]:'index'); 
      //將數組單元的開頭移除  
      array_shift($pathinfo); 
      //獲取$_GET['a]  
      $_GET['a']=(!emptyempty($pathinfo[0])?$pathinfo[0]:'index'); 
       //將數組單元的開頭移除  
      array_shift($pathinfo); 
      $num=count($pathinfo); 
      for ($i=0;$i<$num;$i+=2){ 
        $_GET[$pathinfo[$i]]=$pathinfo[$i+1]; 
      } 
}else{ 
      $_GET['m']=(!emptyempty($_GET['m'])?$_GET['m']:'index'); 
      $_GET['a']=(!emptyempty($_GET['a'])?$_GET['a']:'index'); 
     if($_SERVER["QUERY_STRING"]){ 
        $m=$_GET['m']; 
        unset($_GET['m']);   //去除數組的m  
        $a=$_GET['a']; 
        unset($_GET['a']);   //去除數組的a  
         
        $query=http_build_query($_GET);  //組成新的URL參數  
        //組合新的URL  
        $url=$_SERVER['SCRIPT_NAME']."/{$m}/{$a}/".str_replace(array("&","="),"/",$query).".html";   //重點在這  
        header("Location:".$url); 
     }   

if(isset($_SERVER['PATH_INFO'])){
   $str=substr($_SERVER['PATH_INFO'],0,strpos($_SERVER['PATH_INFO'],'.'));
   //獲取路徑信息(pathinfo)
   $pathinfo=explode('/',trim($str,'/'));
   //獲取$_GET['m']
   $_GET['m']=(!empty($pathinfo[0])?$pathinfo[0]:'index');
   //將數組單元的開頭移除
   array_shift($pathinfo);
   //獲取$_GET['a]
   $_GET['a']=(!empty($pathinfo[0])?$pathinfo[0]:'index');
    //將數組單元的開頭移除
   array_shift($pathinfo);
   $num=count($pathinfo);
   for ($i=0;$i<$num;$i+=2){
    $_GET[$pathinfo[$i]]=$pathinfo[$i+1];
   }
}else{
   $_GET['m']=(!empty($_GET['m'])?$_GET['m']:'index');
   $_GET['a']=(!empty($_GET['a'])?$_GET['a']:'index');
  if($_SERVER["QUERY_STRING"]){
   $m=$_GET['m'];
   unset($_GET['m']);   //去除數組的m
   $a=$_GET['a'];
   unset($_GET['a']);   //去除數組的a
   
   $query=http_build_query($_GET);  //組成新的URL參數
   //組合新的URL
   $url=$_SERVER['SCRIPT_NAME']."/{$m}/{$a}/".str_replace(array("&","="),"/",$query).".html";   //重點在這
   header("Location:".$url);
  } 
}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved