CheckRoute()
CheckRoute( $Data)
路由匹配
Parameters
$Data |
<?php
/**
* GKPHP - 极客框架
* 路由PATH_INFO模式
*/
namespace GK\Route\Driver;
use GK\Route\Driver;
class Path_Info extends Driver
{
public static function CheckRoute($Data){
$Route=array();
if(isset($_SERVER['REQUEST_URI'])&&$_SERVER['REQUEST_URI']!='/'){
$RouteUrl=explode('/',trim(substr($_SERVER['REQUEST_URI'],0,strpos($_SERVER['REQUEST_URI'],'?'))?:$_SERVER['REQUEST_URI'],'/'));
if(isset($RouteUrl[0])){
$Route['Module']=ucwords($RouteUrl[0]);
}
unset($RouteUrl[0]);
if(isset($RouteUrl[1])){
$Route['Controller']=ucwords($RouteUrl[1]);
unset($RouteUrl[1]);
}
if(isset($RouteUrl[2])){
$Route['Action']=ucwords($RouteUrl[2]);
unset($RouteUrl[2]);
}
$RouteCount=count($RouteUrl)+3;
$i=3;
if(isset($RouteCount)){
while($i<$RouteCount){
if(isset($RouteUrl[$i+1])){
$_GET[$RouteUrl[$i]]=$RouteUrl[$i+1];
}
$i=$i+2;
}
}
return $Route;
}else{
return $Route;
}
}
}