Skip to content

Commit bca9b36

Browse files
committed
some update
1 parent 4b81a3b commit bca9b36

File tree

4 files changed

+49
-92
lines changed

4 files changed

+49
-92
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -307,15 +307,15 @@ $route = SRouter::match($path, $method);
307307
// - defaults - 有可选参数时,可以设置默认值
308308
// 还可以自定义追加此路由的选项:如下经供参考
309309
// - domains 允许访问路由的域名
310-
// - schema 允许访问路由的schema
310+
// - schemas 允许访问路由的schema
311311
// - enter 进入路由的事件回调
312312
// ... ...
313313
'option' => [
314314
'params' => [],
315315
'defaults' => [],
316316

317317
// 'domains' => null,
318-
// 'schema' => null, // ['http','https'],
318+
// 'schemas' => null, // ['http','https'],
319319
// route event. custom design ...
320320
// 'enter' => null,
321321
// 'leave' => null,

src/AbstractRouter.php

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,19 @@
1414
*/
1515
abstract class AbstractRouter implements RouterInterface
1616
{
17+
/**
18+
* some available patterns regex
19+
* $router->get('/user/{num}', 'handler');
20+
* @var array
21+
*/
22+
protected static $globalParams = [
23+
'any' => '[^/]+', // match any except '/'
24+
'num' => '[0-9]+', // match a number
25+
'id' => '[1-9][0-9]*', // match a ID number
26+
'act' => '[a-zA-Z][\w-]+', // match a action name
27+
'all' => '.*'
28+
];
29+
1730
/**
1831
* validate and format arguments
1932
* @param string|array $methods
@@ -306,12 +319,39 @@ public static function convertNodeStr($str)
306319
return $str;
307320
}
308321

322+
/**
323+
* @param array $params
324+
*/
325+
public function addGlobalParams(array $params)
326+
{
327+
foreach ($params as $name => $pattern) {
328+
$this->addGlobalParam($name, $pattern);
329+
}
330+
}
331+
332+
/**
333+
* @param $name
334+
* @param $pattern
335+
*/
336+
public function addGlobalParam($name, $pattern)
337+
{
338+
$name = trim($name, '{} ');
339+
self::$globalParams[$name] = $pattern;
340+
}
341+
342+
/**
343+
* @return array
344+
*/
345+
public function getGlobalParams()
346+
{
347+
return self::$globalParams;
348+
}
349+
309350
/**
310351
* @return array
311352
*/
312353
public static function getSupportedMethods()
313354
{
314355
return self::SUPPORTED_METHODS;
315356
}
316-
317357
}

src/ORouter.php

Lines changed: 6 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -26,17 +26,11 @@ class ORouter extends AbstractRouter
2626
/** @var int */
2727
private $routeCounter = 0;
2828

29-
/**
30-
* some available patterns regex
31-
* $router->get('/user/{num}', 'handler');
32-
* @var array
33-
*/
34-
private static $globalParams = [
35-
'any' => '[^/]+', // match any except '/'
36-
'num' => '[0-9]+', // match a number
37-
'id' => '[1-9][0-9]*', // match a ID number
38-
'act' => '[a-zA-Z][\w-]+', // match a action name
39-
'all' => '.*'
29+
/** @var array global Options */
30+
private $globalOptions = [
31+
// 'domains' => [ 'localhost' ], // allowed domains
32+
// 'schemas' => [ 'http' ], // allowed schemas
33+
// 'time' => ['12'],
4034
];
4135

4236
/** @var string */
@@ -277,7 +271,7 @@ public function group($prefix, \Closure $callback, array $opts = [])
277271
* 'params' => [ 'id' => '[0-9]+', ],
278272
* 'defaults' => [ 'id' => 10, ],
279273
* 'domains' => [ 'a-domain.com', '*.b-domain.com'],
280-
* 'schemes' => ['https'],
274+
* 'schemas' => ['https'],
281275
* ]
282276
* @return static
283277
* @throws \LogicException
@@ -487,26 +481,6 @@ public function dispatch($dispatcher = null, $path = null, $method = null)
487481
* helper methods
488482
******************************************************************************/
489483

490-
/**
491-
* @param array $params
492-
*/
493-
public function addGlobalParams(array $params)
494-
{
495-
foreach ($params as $name => $pattern) {
496-
$this->addGlobalParam($name, $pattern);
497-
}
498-
}
499-
500-
/**
501-
* @param $name
502-
* @param $pattern
503-
*/
504-
public function addGlobalParam($name, $pattern)
505-
{
506-
$name = trim($name, '{} ');
507-
self::$globalParams[$name] = $pattern;
508-
}
509-
510484
/**
511485
* @return int
512486
*/
@@ -571,22 +545,6 @@ public function getRouteCaches()
571545
return $this->routeCaches;
572546
}
573547

574-
/**
575-
* @return array
576-
*/
577-
public function getGlobalParams()
578-
{
579-
return self::$globalParams;
580-
}
581-
582-
/**
583-
* @return array
584-
*/
585-
public static function getSupportedMethods()
586-
{
587-
return self::SUPPORTED_METHODS;
588-
}
589-
590548
/**
591549
* @param null|string $name
592550
* @param null|mixed $default

src/SRouter.php

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,6 @@ class SRouter extends AbstractRouter
2727
/** @var int */
2828
private static $routeCounter = 0;
2929

30-
/**
31-
* some available patterns regex
32-
* $router->get('/user/{num}', 'handler');
33-
* @var array
34-
*/
35-
private static $globalParams = [
36-
'any' => '[^/]+', // match any except '/'
37-
'num' => '[0-9]+', // match a number
38-
'id' => '[1-9][0-9]*', // match a ID number
39-
'act' => '[a-zA-Z][\w-]+', // match a action name
40-
'all' => '.*'
41-
];
42-
4330
/** @var string */
4431
private static $currentGroupPrefix = '';
4532

@@ -375,26 +362,6 @@ public static function dispatch($dispatcher = null, $path = null, $method = null
375362
/// helper methods
376363
//////////////////////////////////////////////////////////////////////
377364

378-
/**
379-
* @param array $params
380-
*/
381-
public static function addGlobalParams(array $params)
382-
{
383-
foreach ($params as $name => $pattern) {
384-
self::addGlobalParam($name, $pattern);
385-
}
386-
}
387-
388-
/**
389-
* @param $name
390-
* @param $pattern
391-
*/
392-
public static function addGlobalParam($name, $pattern)
393-
{
394-
$name = trim($name, '{} ');
395-
self::$globalParams[$name] = $pattern;
396-
}
397-
398365
/**
399366
* @return int
400367
*/
@@ -419,14 +386,6 @@ public static function getRegularRoutes()
419386
return self::$regularRoutes;
420387
}
421388

422-
/**
423-
* @return array
424-
*/
425-
public static function getVagueRoutes()
426-
{
427-
return self::$vagueRoutes;
428-
}
429-
430389
/**
431390
* @return array
432391
*/

0 commit comments

Comments
 (0)