Kernel

class Kernel implements Kernel (View source)

Properties

protected Application $app The application implementation.
protected Router $router The router instance.
protected string[] $bootstrappers The bootstrap classes for the application.
protected array $middleware The application's middleware stack.
protected array $middlewareGroups The application's route middleware groups.
protected array $routeMiddleware The application's route middleware.
protected string[] $middlewarePriority The priority-sorted list of middleware.

Methods

void __construct(Application $app, Router $router)

Create a new HTTP kernel instance.

Response handle(Request $request)

Handle an incoming HTTP request.

Response sendRequestThroughRouter(Request $request)

Send the given request through the middleware / router.

void bootstrap()

Bootstrap the application for HTTP requests.

Closure dispatchToRouter()

Get the route dispatcher callback.

void terminate(Request $request, Response $response)

Call the terminate method on any terminable middleware.

void terminateMiddleware(Request $request, Response $response)

Call the terminate method on any terminable middleware.

array gatherRouteMiddleware(Request $request)

Gather the route middleware for the given request.

array parseMiddleware(string $middleware)

Parse a middleware string to get the name and parameters.

bool hasMiddleware(string $middleware)

Determine if the kernel has a given middleware.

$this prependMiddleware(string $middleware)

Add a new middleware to beginning of the stack if it does not already exist.

$this pushMiddleware(string $middleware)

Add a new middleware to end of the stack if it does not already exist.

$this prependMiddlewareToGroup(string $group, string $middleware)

Prepend the given middleware to the given middleware group.

$this appendMiddlewareToGroup(string $group, string $middleware)

Append the given middleware to the given middleware group.

$this prependToMiddlewarePriority(string $middleware)

Prepend the given middleware to the middleware priority list.

$this appendToMiddlewarePriority(string $middleware)

Append the given middleware to the middleware priority list.

void syncMiddlewareToRouter()

Sync the current state of the middleware to the router.

array bootstrappers()

Get the bootstrap classes for the application.

void reportException(Throwable $e)

Report the exception to the exception handler.

Response renderException(Request $request, Throwable $e)

Render the exception to a response.

array getMiddlewareGroups()

Get the application's route middleware groups.

array getRouteMiddleware()

Get the application's route middleware.

Application getApplication()

Get the Laravel application instance.

Details

void __construct(Application $app, Router $router)

Create a new HTTP kernel instance.

Parameters

Application $app
Router $router

Return Value

void

Response handle(Request $request)

Handle an incoming HTTP request.

Parameters

Request $request

Return Value

Response

protected Response sendRequestThroughRouter(Request $request)

Send the given request through the middleware / router.

Parameters

Request $request

Return Value

Response

void bootstrap()

Bootstrap the application for HTTP requests.

Return Value

void

protected Closure dispatchToRouter()

Get the route dispatcher callback.

Return Value

Closure

void terminate(Request $request, Response $response)

Call the terminate method on any terminable middleware.

Parameters

Request $request
Response $response

Return Value

void

protected void terminateMiddleware(Request $request, Response $response)

Call the terminate method on any terminable middleware.

Parameters

Request $request
Response $response

Return Value

void

protected array gatherRouteMiddleware(Request $request)

Gather the route middleware for the given request.

Parameters

Request $request

Return Value

array

protected array parseMiddleware(string $middleware)

Parse a middleware string to get the name and parameters.

Parameters

string $middleware

Return Value

array

bool hasMiddleware(string $middleware)

Determine if the kernel has a given middleware.

Parameters

string $middleware

Return Value

bool

$this prependMiddleware(string $middleware)

Add a new middleware to beginning of the stack if it does not already exist.

Parameters

string $middleware

Return Value

$this

$this pushMiddleware(string $middleware)

Add a new middleware to end of the stack if it does not already exist.

Parameters

string $middleware

Return Value

$this

$this prependMiddlewareToGroup(string $group, string $middleware)

Prepend the given middleware to the given middleware group.

Parameters

string $group
string $middleware

Return Value

$this

Exceptions

InvalidArgumentException

$this appendMiddlewareToGroup(string $group, string $middleware)

Append the given middleware to the given middleware group.

Parameters

string $group
string $middleware

Return Value

$this

Exceptions

InvalidArgumentException

$this prependToMiddlewarePriority(string $middleware)

Prepend the given middleware to the middleware priority list.

Parameters

string $middleware

Return Value

$this

$this appendToMiddlewarePriority(string $middleware)

Append the given middleware to the middleware priority list.

Parameters

string $middleware

Return Value

$this

protected void syncMiddlewareToRouter()

Sync the current state of the middleware to the router.

Return Value

void

protected array bootstrappers()

Get the bootstrap classes for the application.

Return Value

array

protected void reportException(Throwable $e)

Report the exception to the exception handler.

Parameters

Throwable $e

Return Value

void

protected Response renderException(Request $request, Throwable $e)

Render the exception to a response.

Parameters

Request $request
Throwable $e

Return Value

Response

array getMiddlewareGroups()

Get the application's route middleware groups.

Return Value

array

array getRouteMiddleware()

Get the application's route middleware.

Return Value

array

Application getApplication()

Get the Laravel application instance.

Return Value

Application

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Foundation/Http/Kernel.html