php下实现伪 url 的超简单方法[转]

  就像我的日志中的地址路径一样,让 index.php?action=one&do=two

  变成: ?index/action/one/do/two

  

复制代码 代码如下:

  index.php

  --------------

  <?php

  // PARSING QUERY STRING

  $QS=explode("&",$_SERVER['QUERY_STRING']);

  $QS=explode('/',$QS[0]);

  // IF Modul is Undefined set it to index

  if (!$QS[0]) $MODUL='index';

  else $MODUL=strtolower($QS[0]);

  // WE can make a Variable $_QUERY

  // for alternative _GET

  for ($i=1;$i<count($QS);$i+=2)

  {

  $_QUERY[$NVAR]=$NVAR=$QS[$i];

  $$NVAR=$QS[$i+1];

  }

  // Check the Modul is exists?

  if (!file_exists("modul_directory/{ $MODUL }.php"))

  $MODUL="index";

  #### THIS IS EXAMPLE TO IMPLEMENTATION THE SCRIPT

  // Load The Template

  include("template.php");

  // Load The Module

  include("modul_directory/{ $MODUL }.php");

  // Load The Footer

  include("footer.php");

  ?>

  we can access the modul in URL like this:

  =================================

  www.example.com/?forum/topic/20

  - it mean load the modul forum.php, and set the _QUERY['topic']=20

  www.foo.com/?voting/id/54/type/piechart&choice=2

  - it mean load the modul voting.php, and set the _QUERY['id']=54 and _QUERY['type']='piechart' and set _GET['choice']=2