🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### 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); ~~~