middleware)) { $this->middleware = [$this->middleware]; } $array = []; foreach ($this->middleware as $value) { if (!in_array(MiddlewareInterface::class, class_implements($value))) { throw new \Exception('The middleware'); } $array[] = $value; } $this->middleware = $array; } /** * @param mixed $class * @param mixed|null $method * @return $this */ public function execute(mixed $class, mixed $method = null): mixed { MiddlewareManager::add($class, $method, $this->middleware); return parent::execute($class, $method); } }