文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>编写一个简单的路由类

编写一个简单的路由类

时间:2011-04-11  来源:wufoo

<?php
class Router
{
    public function getRouter($types = 1)
    {
        if ( isset($_SERVER['PATH_INFO']) )
        {
            $query_string = substr(str_replace(array('.html','.htm', '.asp', '//'), '',$_SERVER['PATH_INFO']),1);
        }
        else
        {
            $query_string = str_replace($_SERVER['SCRIPT_NAME'], '',$_SERVER['PHP_SELF']);
        }
        if ( $types == 1 )
        {
            // 第一种类型以/分隔
            $temp = explode('/', $query_string);
        }
        elseif ($types == 2)
        {
            $temp = explode('-', $query_string);
        }
        elseif ($types == 3)
        {
            return array('Controller'=>$_GET['controller']);
        }
  
        if ( empty($temp[0]) )
        {
            return array('Controller' => 'index','Operate' => 'index');
        }
        if ( empty($temp[1]) )
        {
           $temp[] = 'index';
        }
        // 去除空项 
        foreach ($temp as $val)
        {
            if ($val)
           {
                $url[] = $val;
           }
      }
      list($controller, $operate) = $url;
      //有参数的情况
      $params = array();
      if ( count($url)>2 )
      {
           array_shift($url);
           array_shift($url);
           $params = $url;
      }
     return
      array(
       "Controller" => $controller,
       "Operate" => $operate,
       "params" => $params,
      );
     }
}
?>
<?php
$url = new Router();
$url->getRouter(1);
print_r($url); //在这里可以看到各元素
?>
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载