public function render(Request $request) { if (!in_array($request->getMethod(), $this->requirements['methods'])) { return false; } $path = $request->getUri()->getPath(); $path = '/' . trim($path, '/'); if (preg_match($this->pattern, $path, $urlParameters) !== 1) { return false; } $realParameters = self::getParameters($this->getHandlerParameters(), array_filter($urlParameters), $request); EventHandler::trigger(EventHandler::ON_ROUTE_MATCH, $this, $realParameters, $request); if ($this->requirements['https'] && !$request->isSecure()) { return false; } $response = ($this->handler)(...array_values($realParameters)); self::handleResponse($response); return true; }