This commit is contained in:
2021-09-24 17:59:30 +08:00
parent b8fe0413ed
commit 13c4e7eca4
+8 -11
View File
@@ -35,17 +35,14 @@ class MiddlewareManager extends BaseObject
if (!isset(static::$_middlewares[$class][$method])) { if (!isset(static::$_middlewares[$class][$method])) {
static::$_middlewares[$class][$method] = []; static::$_middlewares[$class][$method] = [];
} }
if (is_string($middlewares)) {
$source = &static::$_middlewares[$class][$method]; $middlewares = [$middlewares];
if (is_string($middlewares) && !in_array($middlewares, $source)) { }
$source[$middlewares] = di($middlewares); foreach ($middlewares as $middleware) {
} else { if (isset(static::$_middlewares[$class][$method][$middleware])) {
foreach ($middlewares as $middleware) { continue;
if (isset($source[$middleware])) {
continue;
}
$source[$middleware] = di($middleware);
} }
static::$_middlewares[$class][$method][$middleware] = di($middleware);
} }
return true; return true;
} }
@@ -60,7 +57,7 @@ class MiddlewareManager extends BaseObject
if ($handler instanceof Closure || !isset(static::$_middlewares[$handler[0]])) { if ($handler instanceof Closure || !isset(static::$_middlewares[$handler[0]])) {
return null; return null;
} }
return static::$_middlewares[$handler[0]][$handler[1]] ?? null; return static::$_middlewares[$handler[0]][$handler[1]] ?? null;
} }