#### Route
~~~
/**
* 注册变量规则
* @access public
* @param string|array $name 变量名
* @param string $rule 变量规则
* @return void
*/
Route::pattern($name = null, $rule = '');
/**
* 注册子域名部署规则
* @access public
* @param string|array $domain 子域名
* @param mixed $rule 路由规则
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::domain($domain, $rule = '', $option = [], $pattern = []);
self::setDomain($domain);
/**
* 设置路由绑定
* @access public
* @param mixed $bind 绑定信息
* @param string $type 绑定类型 默认为module 支持 namespace class controller
* @return mixed
*/
Route::bind($bind, $type = 'module');
/**
* 设置或者获取路由标识
* @access public
* @param string|array $name 路由命名标识 数组表示批量设置
* @param array $value 路由地址及变量信息
* @return array
*/
Route:;name($name = '', $value = null);
/**
* 读取路由绑定
* @access public
* @param string $type 绑定类型
* @return mixed
*/
Route::getBind($type);
/**
* 导入配置文件的路由规则
* @access public
* @param array $rule 路由规则
* @param string $type 请求类型
* @return void
*/
Route::import(array $rule, $type = '*');
// 批量注册路由
self::registerRules($rules, $type = '*');
/**
* 注册路由规则
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param string $type 请求类型
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
self::rule($rule, $route = '', $type = '*', $option = [], $pattern = []);
/**
* 设置路由规则
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param string $type 请求类型
* @param array $option 路由参数
* @param array $pattern 变量规则
* @param string $group 所属分组
* @return void
*/
self::setRule($rule, $route, $type = '*', $option = [], $pattern = [], $group = '');
/**
* 设置当前执行的参数信息
* @access public
* @param array $options 参数信息
* @return mixed
*/
self::setOption($options = []);
/**
* 获取当前执行的所有参数信息
* @access public
* @return array
*/
Route::getOption();
/**
* 获取当前的分组信息
* @access public
* @param string $type 分组信息名称 name option pattern
* @return mixed
*/
Route::getGroup($type);
/**
* 设置当前的路由分组
* @access public
* @param string $name 分组名称
* @param array $option 分组路由参数
* @param array $pattern 分组变量规则
* @return void
*/
Route::setGroup($name, $option = [], $pattern = []);
/**
* 注册路由分组
* @access public
* @param string|array $name 分组名称或者参数
* @param array|\Closure $routes 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::group($name, $routes, $option = [], $pattern = []);
/**
* 注册路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::any($rule, $route = '', $option = [], $pattern = []);
/**
* 注册GET路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::get($rule, $route = '', $option = [], $pattern = []);
/**
* 注册POST路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::post($rule, $route = '', $option = [], $pattern = []);
/**
* 注册PUT路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::put($rule, $route = '', $option = [], $pattern = []);
/**
* 注册DELETE路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::delete($rule, $route = '', $option = [], $pattern = []);
/**
* 注册PATCH路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::patch($rule, $route = '', $option = [], $pattern = []);
/**
* 注册资源路由
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::resource($rule, $route = '', $option = [], $pattern = []);
/**
* 注册控制器路由 操作方法对应不同的请求后缀
* @access public
* @param string $rule 路由规则
* @param string $route 路由地址
* @param array $option 路由参数
* @param array $pattern 变量规则
* @return void
*/
Route::controller($rule, $route = '', $option = [], $pattern = []);
/**
* 注册别名路由
* @access public
* @param string|array $rule 路由别名
* @param string $route 路由地址
* @param array $option 路由参数
* @return void
*/
Route::alias($rule = null, $route = '', $option = []);
/**
* 设置不同请求类型下面的方法前缀
* @access public
* @param string $method 请求类型
* @param string $prefix 类型前缀
* @return void
*/
Route::setMethodPrefix($method, $prefix = '');
/**
* rest方法定义和修改
* @access public
* @param string $name 方法名称
* @param array|bool $resource 资源
* @return void
*/
Route::rest($name, $resource = []);
/**
* 注册未匹配路由规则后的处理
* @access public
* @param string $route 路由地址
* @param string $method 请求类型
* @param array $option 路由参数
* @return void
*/
Route::miss($route, $method = '*', $option = []);
/**
* 注册一个自动解析的URL路由
* @access public
* @param string $route 路由地址
* @return void
*/
Route::function auto($route);
/**
* 获取或者批量设置路由定义
* @access public
* @param mixed $rules 请求类型或者路由定义数组
* @return array
*/
Route::rules($rules = '');
/**
* 检测子域名部署
* @access public
* @param Request $request Request请求对象
* @param array $currentRules 当前路由规则
* @param string $method 请求类型
* @return void
*/
Route::checkDomain($request, &$currentRules, $method = 'get');
/**
* 检测URL路由
* @access public
* @param Request $request Request请求对象
* @param string $url URL地址
* @param string $depr URL分隔符
* @param bool $checkDomain 是否检测域名规则
* @return false|array
*/
Route::check($request, $url, $depr = '/', $checkDomain = false);
self::getRouteExpress($key);
/**
* 检测路由规则
* @access private
* @param Request $request
* @param array $rules 路由规则
* @param string $url URL地址
* @param string $depr URL分割符
* @param string $group 路由分组名
* @param array $options 路由参数(分组)
* @return mixed
*/
self::checkRoute($request, $rules, $url, $depr = '/', $group = '', $options = []);
/**
* 检测路由别名
* @access private
* @param Request $request
* @param string $url URL地址
* @param string $depr URL分隔符
* @return mixed
*/
self::checkRouteAlias($request, $url, $depr);
/**
* 检测URL绑定
* @access private
* @param string $url URL地址
* @param array $rules 路由规则
* @param string $depr URL分隔符
* @return mixed
*/
self::checkUrlBind(&$url, &$rules, $depr = '/');
/**
* 绑定到类
* @access public
* @param string $url URL地址
* @param string $class 类名(带命名空间)
* @param string $depr URL分隔符
* @return array
*/
Route::bindToClass($url, $class, $depr = '/');
/**
* 绑定到命名空间
* @access public
* @param string $url URL地址
* @param string $namespace 命名空间
* @param string $depr URL分隔符
* @return array
*/
Route::bindToNamespace($url, $namespace, $depr = '/');
/**
* 绑定到控制器类
* @access public
* @param string $url URL地址
* @param string $controller 控制器名 (支持带模块名 index/user )
* @param string $depr URL分隔符
* @return array
*/
Route::bindToController($url, $controller, $depr = '/');
/**
* 绑定到模块/控制器
* @access public
* @param string $url URL地址
* @param string $controller 控制器类名(带命名空间)
* @param string $depr URL分隔符
* @return array
*/
Route::bindToModule($url, $controller, $depr = '/');
/**
* 路由参数有效性检查
* @access private
* @param array $option 路由参数
* @param Request $request Request对象
* @return bool
*/
self::checkOption($option, $request);
/**
* 检测路由规则
* @access private
* @param string $rule 路由规则
* @param string $route 路由地址
* @param string $url URL地址
* @param array $pattern 变量规则
* @param array $option 路由参数
* @param string $depr URL分隔符(全局)
* @return array|false
*/
self::checkRule($rule, $route, $url, $pattern, $option, $depr);
/**
* 解析模块的URL地址 [模块/控制器/操作?]参数1=值1&参数2=值2...
* @access public
* @param string $url URL地址
* @param string $depr URL分隔符
* @param bool $autoSearch 是否自动深度搜索控制器
* @return array
*/
Route::parseUrl($url, $depr = '/', $autoSearch = false);
/**
* 解析URL的pathinfo参数和变量
* @access private
* @param string $url URL地址
* @return array
*/
self::parseUrlPath($url);
/**
* 检测URL和规则路由是否匹配
* @access private
* @param string $url URL地址
* @param string $rule 路由规则
* @param array $pattern 变量规则
* @return array|false
*/
self::match($url, $rule, $pattern);
/**
* 解析规则路由
* @access private
* @param string $rule 路由规则
* @param string $route 路由地址
* @param string $pathinfo URL地址
* @param array $option 路由参数
* @param array $matches 匹配的变量
* @return array
*/
self::parseRule($rule, $route, $pathinfo, $option = [], $matches = []);
/**
* 解析URL地址为 模块/控制器/操作
* @access private
* @param string $url URL地址
* @return array
*/
self::parseModule($url);
/**
* 解析URL地址中的参数Request对象
* @access private
* @param string $rule 路由规则
* @param array $var 变量
* @return void
*/
self::parseUrlParams($url, &$var = []);
// 分析路由规则中的变量
self::parseVar($rule);
~~~