/** * @param Request $request * @param Response $response * @param callable|NULL $next * * @return Response */ public function __invoke(Request $request, Response $response, callable $next = NULL) { $elapsed_time = elapsed_time_since_request(); $response->getBody()->write("<div>Elapsed time : {$elapsed_time}</div>" . PHP_EOL); // delegate to parent return parent::__invoke($request, $response, $next); }
/** * Routing Middleware entry point. * * Route determination and execution is handled entirely by this object. * * @param Request $request * @param Response $response * @param callable|NULL $next * * @return Response */ public function __invoke(Request $request, Response $response, callable $next = NULL) { // we need to get the routing object here due to the strict // middleware __invoke method signature. $this->routing = $this->forge->make(Routing::class); // evaluate the route and return state list($status, $action, $input) = $this->routing->evaluate_route($this->routing->match()); // verify that the route is valid $error_response = $this->routing->getRouteError($response, $status); // has an error been detected? if (is_null($error_response)) { // No, so execute the route return $this->routing->executeRouteAction($input, $action) ? parent::__invoke($request, $response, $next) : $response; } else { // otherwise return the error response return $error_response; } }
/** * @param Request $request * @param Response $response * @param callable $next * * @return Response */ public function __invoke(Request $request, Response $response, callable $next = NULL) { $response->getBody()->write('<div>End of Line.</div>' . PHP_EOL); // delegate to parent return parent::__invoke($request, $response, $next); }
/** * @param Request $request * @param Response $response * @param callable|NULL $next * * @return Response */ public function __invoke(Request $request, Response $response, callable $next = NULL) { $msg = $this->logged_in ? "<div>You are logged in!</div>" : "<div>You need to login.</div>"; $response->getBody()->write($msg); return $this->logged_in ? parent::__invoke($request, $response, $next) : $response; }