mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-01 20:52:48 +08:00
Url类添加Route方法根据路由别名获取URL地址
This commit is contained in:
@@ -29,7 +29,7 @@ class Route
|
||||
// 变量规则
|
||||
private static $pattern = [];
|
||||
// 路由别名 用于自动生成
|
||||
public static $alias = [];
|
||||
private static $alias = [];
|
||||
|
||||
// 添加URL映射规则
|
||||
public static function map($map, $route = '')
|
||||
@@ -629,4 +629,27 @@ class Route
|
||||
return $result['route'];
|
||||
}
|
||||
}
|
||||
|
||||
// 根据路由别名和参数获取URL地址
|
||||
public static function getRouteUrl($name, $params = [])
|
||||
{
|
||||
if (!empty(self::$alias[$name])) {
|
||||
$url = self::$alias[$name];
|
||||
if (is_string($params)) {
|
||||
parse_str($params, $vars);
|
||||
} else {
|
||||
$vars = $params;
|
||||
}
|
||||
foreach ($vars as $key => $val) {
|
||||
if (false !== strpos($url, '[:' . $key . ']')) {
|
||||
$url = str_replace('[:' . $key . ']', $val, $url);
|
||||
} else {
|
||||
$url = str_replace(':' . $key, $val, $url);
|
||||
}
|
||||
}
|
||||
return $url;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -99,9 +99,7 @@ class Url
|
||||
// 根据路由名称和参数生成URL地址
|
||||
public static function route($name, $params)
|
||||
{
|
||||
if (isset(Route::$alias[$name])) {
|
||||
|
||||
}
|
||||
return Route::getRouteUrl($name, $params);
|
||||
}
|
||||
|
||||
// 解析URL和参数 域名
|
||||
|
||||
Reference in New Issue
Block a user