@@ -26,18 +26,18 @@ discard block |
||
26 | 26 | // 参数 |
27 | 27 | $parameters = []; |
28 | 28 | // 转义正则 |
29 | - $url=preg_replace('/([\/\.\\\\\+\(\^\)\$\!\<\>\-\?\*])/', '\\\\$1', $uri); |
|
29 | + $url = preg_replace('/([\/\.\\\\\+\(\^\)\$\!\<\>\-\?\*])/', '\\\\$1', $uri); |
|
30 | 30 | // 添加忽略 |
31 | - $url=preg_replace('/(\[)([^\[\]]+)(?(1)\])/', '(?:$2)?', $url); |
|
31 | + $url = preg_replace('/(\[)([^\[\]]+)(?(1)\])/', '(?:$2)?', $url); |
|
32 | 32 | // 添加 * ? 匹配 |
33 | - $url=str_replace(['\*','\?'], ['[^/]*?','[^/]'], $url); |
|
33 | + $url = str_replace(['\*', '\?'], ['[^/]*?', '[^/]'], $url); |
|
34 | 34 | // 编译页面参数 |
35 | - $url=preg_replace_callback('/\{(\w+)(?:\:([^}]+?))?\}/', function ($match) use (&$parameters) { |
|
35 | + $url = preg_replace_callback('/\{(\w+)(?:\:([^}]+?))?\}/', function($match) use (&$parameters) { |
|
36 | 36 | $name = $match[1]; |
37 | 37 | $type = 'string'; |
38 | 38 | $extra = ''; |
39 | 39 | if (isset($match[2])) { |
40 | - if (strpos($match[2], '=')!==false) { |
|
40 | + if (strpos($match[2], '=') !== false) { |
|
41 | 41 | list($type, $extra) = \explode('=', $match[2]); |
42 | 42 | } else { |
43 | 43 | $type = $match[2]; |
@@ -56,24 +56,24 @@ discard block |
||
56 | 56 | |
57 | 57 | public static function buildUri(UriMatcher $matcher, array $parameter, bool $allowQuery = true):string |
58 | 58 | { |
59 | - $uri = $matcher->getUri(); |
|
59 | + $uri = $matcher->getUri(); |
|
60 | 60 | // 拆分参数 |
61 | 61 | list($mapper, $query) = static::analyseParameter($matcher, $parameter); |
62 | 62 | // for * ? |
63 | - $url=\str_replace(['*','?'],['','-'], $uri); |
|
63 | + $url = \str_replace(['*', '?'], ['', '-'], $uri); |
|
64 | 64 | // for ignore value |
65 | - $url=preg_replace_callback('/\[(.+?)\]/', function ($match) use ($matcher, $parameter, $mapper) { |
|
65 | + $url = preg_replace_callback('/\[(.+?)\]/', function($match) use ($matcher, $parameter, $mapper) { |
|
66 | 66 | if (preg_match('/\{(\w+).+?\}/', $match[1])) { |
67 | 67 | $count = 0; |
68 | - $subUrl= static::replaceParameter($match[1], $matcher, $parameter, $mapper, $count); |
|
69 | - if ($count > 0 ){ |
|
68 | + $subUrl = static::replaceParameter($match[1], $matcher, $parameter, $mapper, $count); |
|
69 | + if ($count > 0) { |
|
70 | 70 | return $subUrl; |
71 | 71 | } |
72 | 72 | } |
73 | 73 | return ''; |
74 | 74 | }, $url); |
75 | 75 | |
76 | - $url= static::replaceParameter($url, $matcher, $parameter, $mapper); |
|
76 | + $url = static::replaceParameter($url, $matcher, $parameter, $mapper); |
|
77 | 77 | |
78 | 78 | if (count($query) && $allowQuery) { |
79 | 79 | return $url.'?'.http_build_query($query, 'v', '&', PHP_QUERY_RFC3986); |
@@ -96,8 +96,8 @@ discard block |
||
96 | 96 | return [$mapper, $query]; |
97 | 97 | } |
98 | 98 | |
99 | - protected static function replaceParameter(string $input,UriMatcher $matcher,array $parameter, array $mapper, ?int &$count=null) { |
|
100 | - return preg_replace_callback('/\{(\w+).+?\}/', function ($match) use ($matcher, $parameter, $mapper) { |
|
99 | + protected static function replaceParameter(string $input, UriMatcher $matcher, array $parameter, array $mapper, ?int &$count = null) { |
|
100 | + return preg_replace_callback('/\{(\w+).+?\}/', function($match) use ($matcher, $parameter, $mapper) { |
|
101 | 101 | if (\array_key_exists($match[1], $mapper)) { |
102 | 102 | return $mapper[$match[1]]->packValue($parameter[$match[1]]); |
103 | 103 | } |