Kernel
class Kernel implements Kernel (View source)
Traits
Properties
protected Application | $app | The application implementation. |
|
protected Router | $router | The router instance. |
|
protected string[] | $bootstrappers | The bootstrap classes for the application. |
|
protected array<int,class-string|string> | $middleware | The application's middleware stack. |
|
protected array<string,array<int,class-string|string>> | $middlewareGroups | The application's route middleware groups. |
|
protected array<string,class-string|string> deprecated | $routeMiddleware | The application's route middleware. |
|
protected array<string,class-string|string> | $middlewareAliases | The application's middleware aliases. |
|
protected array | $requestLifecycleDurationHandlers | All of the registered request duration handlers. |
|
protected Carbon|null | $requestStartedAt | When the kernel starting handling the current request. |
|
protected string[] | $middlewarePriority | The priority-sorted list of middleware. |
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Given a start time, format the total run time for human readability.
Handle an incoming HTTP request.
Bootstrap the application for HTTP requests.
Get the route dispatcher callback.
Call the terminate method on any terminable middleware.
Call the terminate method on any terminable middleware.
Register a callback to be invoked when the requests lifecycle duration exceeds a given amount of time.
When the request being handled started.
Parse a middleware string to get the name and parameters.
Determine if the kernel has a given middleware.
Add a new middleware to the beginning of the stack if it does not already exist.
Add a new middleware to end of the stack if it does not already exist.
Prepend the given middleware to the given middleware group.
Append the given middleware to the given middleware group.
Prepend the given middleware to the middleware priority list.
Append the given middleware to the middleware priority list.
Add the given middleware to the middleware priority list before other middleware.
Add the given middleware to the middleware priority list after other middleware.
Add the given middleware to the middleware priority list relative to other middleware.
Sync the current state of the middleware to the router.
Get the priority-sorted list of middleware.
Get the bootstrap classes for the application.
Get the application's global middleware.
Set the application's global middleware.
Get the application's route middleware groups.
Set the application's middleware groups.
Get the application's route middleware aliases.
Set the application's route middleware aliases.
Set the application's middleware priority.
Get the Laravel application instance.
Details
protected int
secondsUntil(DateTimeInterface|DateInterval|int $delay)
Get the number of seconds until the given DateTime.
protected int
availableAt(DateTimeInterface|DateInterval|int $delay = 0)
Get the "available at" UNIX timestamp.
protected DateTimeInterface|int
parseDateInterval(DateTimeInterface|DateInterval|int $delay)
If the given value is an interval, convert it to a DateTime instance.
protected int
currentTime()
Get the current system time as a UNIX timestamp.
protected string
runTimeForHumans(float $startTime, float $endTime = null)
Given a start time, format the total run time for human readability.
void
__construct(Application $app, Router $router)
Create a new HTTP kernel instance.
Response
handle(Request $request)
Handle an incoming HTTP request.
protected Response
sendRequestThroughRouter(Request $request)
Send the given request through the middleware / router.
void
bootstrap()
Bootstrap the application for HTTP requests.
protected Closure
dispatchToRouter()
Get the route dispatcher callback.
void
terminate(Request $request, Response $response)
Call the terminate method on any terminable middleware.
protected void
terminateMiddleware(Request $request, Response $response)
Call the terminate method on any terminable middleware.
void
whenRequestLifecycleIsLongerThan(DateTimeInterface|CarbonInterval|float|int $threshold, callable $handler)
Register a callback to be invoked when the requests lifecycle duration exceeds a given amount of time.
Carbon|null
requestStartedAt()
When the request being handled started.
protected array
gatherRouteMiddleware(Request $request)
Gather the route middleware for the given request.
protected 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 the 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.
$this
addToMiddlewarePriorityBefore(array|string $before, string $middleware)
Add the given middleware to the middleware priority list before other middleware.
$this
addToMiddlewarePriorityAfter(array|string $after, string $middleware)
Add the given middleware to the middleware priority list after other middleware.
protected $this
addToMiddlewarePriorityRelative(string|array $existing, string $middleware, bool $after = true)
Add the given middleware to the middleware priority list relative to other middleware.
protected void
syncMiddlewareToRouter()
Sync the current state of the middleware to the router.
array
getMiddlewarePriority()
Get the priority-sorted list of middleware.
protected array
bootstrappers()
Get the bootstrap classes for the application.
protected void
reportException(Throwable $e)
Report the exception to the exception handler.
protected Response
renderException(Request $request, Throwable $e)
Render the exception to a response.
array
getGlobalMiddleware()
Get the application's global middleware.
$this
setGlobalMiddleware(array $middleware)
Set the application's global middleware.
array
getMiddlewareGroups()
Get the application's route middleware groups.
$this
setMiddlewareGroups(array $groups)
Set the application's middleware groups.
array
getRouteMiddleware()
deprecated
deprecated
Get the application's route middleware aliases.
array
getMiddlewareAliases()
Get the application's route middleware aliases.
$this
setMiddlewareAliases(array $aliases)
Set the application's route middleware aliases.
$this
setMiddlewarePriority(array $priority)
Set the application's middleware priority.
Application
getApplication()
Get the Laravel application instance.
$this
setApplication(Application $app)
Set the Laravel application instance.