private static function getRouteAlias() { return array(); //TODO if ($item = Cache::get('think_route_map')) { return $item; } // 获取路由定义 $array = Route::rules(); foreach ($array as $type => $rules) { foreach ($rules as $rule => $val) { if (true === $val || empty($val['rule'])) { continue; } $route = $val['route']; $vars = $val['var']; if (is_array($val['rule'])) { foreach ($val['rule'] as $val) { $key = $val['rule']; $route = $val['route']; $var = $val['var']; $param = []; if (is_array($route)) { $route = implode('\\', $route); } elseif ($route instanceof \Closure) { continue; } elseif (strpos($route, '?')) { list($route, $str) = explode('?', $route, 2); parse_str($str, $param); } $var = array_merge($vars, $var); $item[$route][] = [$rule . '/' . $key, $var, $param]; } } else { $param = []; if (is_array($route)) { $route = implode('\\', $route); } elseif ($route instanceof \Closure) { continue; } elseif (strpos($route, '?')) { list($route, $str) = explode('?', $route, 2); parse_str($str, $param); } $item[$route][] = [$rule, $vars, $param]; } } } // 检测路由别名 $alias = Route::rules('alias'); foreach ($alias as $rule => $route) { $route = is_array($route) ? $route[0] : $route; $item[$route][] = [$rule, [], []]; } !App::$debug && Cache::set('think_route_map', $item); return $item; }