Zend\Expressive\Application::__invoke PHP Method

__invoke() public method

If $out is not provided, uses the result of getFinalHandler().
public __invoke ( Psr\Http\Message\ServerRequestInterface $request, Psr\Http\Message\ResponseInterface $response, callable $out = null ) : Psr\Http\Message\ResponseInterface
$request Psr\Http\Message\ServerRequestInterface
$response Psr\Http\Message\ResponseInterface
$out callable
return Psr\Http\Message\ResponseInterface
    public function __invoke(ServerRequestInterface $request, ResponseInterface $response, callable $out = null)
    {
        set_error_handler(function ($errno, $errstr) {
            return false !== strstr($errstr, 'error middleware is deprecated');
        }, E_USER_DEPRECATED);
        if (!$out && null === ($out = $this->getFinalHandler($response))) {
            $response = $response instanceof StratigilityResponse ? $response : new StratigilityResponse($response);
            $out = new FinalHandler([], $response);
        }
        $result = parent::__invoke($request, $response, $out);
        restore_error_handler();
        return $result;
    }

Usage Example

 public function testResourceIdRelationIdRequest()
 {
     $request = $this->request->withUri(new Uri('http://localhost/api/ping/1/comments/1'))->withMethod('GET');
     $response = $this->app->__invoke($request, new Response());
     $data = json_decode((string) $response->getBody(), true);
     $this->assertEquals(200, $response->getStatusCode());
     $this->assertArrayHasKey('ack', $data);
 }
All Usage Examples Of Zend\Expressive\Application::__invoke