История изменений
Исправление Deleted, (текущая версия) :
if (is_array($middleware)) {
if (sizeof($middleware) != 2) {
throw new \LogicException('Invalid middleware definition.');
}
list($middleware, $priority) = $middleware;
} else {
$priority = null;
}
$builder->attachMiddleware($container->get($middleware), $priority);
массив элементов разного типа («неявный контракт» - автор надеется что там всегда будет только то что нужно и в нужном порядке), когда туда засунут объекты другого типа или первым null то будет облом, переменная $middleware переиспользуется для разных данных
внешний цикл повторяется несколько раз в getCommandBus и getContainer которые оба похожи на синглтоны, но для разных данных - т.е. BaseApplication похоже занимается несколькими вещами (а не одной), да еще и судя по названию его будут расширять что будет только хуже
Исходная версия Deleted, :
if (is_array($middleware)) {
if (sizeof($middleware) != 2) {
throw new \LogicException('Invalid middleware definition.');
}
list($middleware, $priority) = $middleware;
} else {
$priority = null;
}
$builder->attachMiddleware($container->get($middleware), $priority);
массив элементов разного типа, когда туда засунут объекты другого типа или первым null то будет облом, переменная $middleware переиспользуется для разных данных
внешний цикл повторяется несколько раз в getCommandBus и getContainer которые оба похожи на синглтоны, но для разных данных - т.е. BaseApplication похоже занимается несколькими вещами (а не одной), да еще и судя по названию его будут расширять что будет только хуже